OpenTelemetry (tautan berada di luar ibm.com), juga dikenal sebagai OTel, adalah kerangka kerja observabilitas sumber terbuka yang mencakup kit pengembangan perangkat lunak (SDK), API yang netral terhadap vendor, serta alat untuk instrumentasi.
Teknologi OpenTelemetry dapat menghasilkan, mengumpulkan, mengekspor, dan menginstrumenkan data telemetri untuk menganalisis perilaku dan kinerja platform Anda. Pengembang dan SRE dapat menggunakan OpenTelemetry untuk mencapai tujuan bisnis melalui proses pengumpulan data telemetri yang terstandardisasi dan memungkinkan pemahaman yang lebih baik tentang perilaku sistem.
Grup TI dan profesional DevOps harus menggunakan instrumentasi untuk membuat sistem yang dapat diamati dalam aplikasi cloud-native. Kode instrumentasi dulu bervariasi, sehingga sulit bagi perusahaan untuk mengubah backend. Mengganti alat menjadi sulit karena mereka harus menulis ulang kode dan mengatur ulang agen baru untuk mengirim data telemetri ke sistem yang baru.
Setelah menyadari perlunya sistem yang terstandarisasi, Cloud Native Computing Foundation (CNCF) (tautan berada di luar ibm.com) mensponsori proyek OpenTelemetry untuk menyediakan cara standar dalam mengirim, mengumpulkan, dan mentransfer data telemetri ke platform observabilitas backend. OpenTelemetry lahir dari menggabungkan teknologi pelacakan terdistribusi OpenCensus (tautan berada di luar ibm.com) dan OpenTracing (tautan berada di luar ibm.com) menjadi satu alat.
IBM Instana™ Observability memberikan semua orang di seluruh perusahaan akses yang mudah digunakan ke data yang mereka inginkan dengan konteks yang mereka butuhkan untuk melakukan pencegahan dan perbaikan masalah dengan sangat cepat.
Integrasikan secara mulus dengan OpenTelemetry dengan IBM Instana
Baca panduan untuk otomatisasi cerdas
Untuk memahami OpenTelemetry secara lebih mendalam, mari kita telusuri apa itu data telemetri dan bagaimana organisasi Anda dapat memanfaatkannya.
Bagian penting dari kinerja aplikasi yang sukses adalah memiliki observabilitas melalui akses ke data. Profesional TI menggunakan data telemetri untuk menentukan kesehatan dan kinerja aplikasi Anda.
OpenTelemetry menciptakan standar untuk mengumpulkan dan mentransfer data telemetri dalam aplikasi cloud-native. Metrik ini kemudian dapat dianalisis dan dipantau oleh organisasi Anda untuk meningkatkan platform Anda.
Data telemetri terutama terdiri dari hasil yang dikumpulkan dari log, metrik, dan jejak. Ini sering disebut sebagai tiga pilar observabilitas.
Metrik: Metrik biasanya di mana Anda akan melihat tanda pertama masalah yang terjadi di sistem Anda. Ini memberi Anda nilai numerik atau kumpulan pengukuran yang menunjukkan pemanfaatan sumber daya dan kinerja aplikasi Anda. Tiga jenis metrik utama adalah delta, pengukur, dan kumulatif.
Jejak: Jejak mengevaluasi bagaimana permintaan bergerak melalui server di lingkungan cloud terdistribusi. Ini melihat ini dengan memantau bagaimana operasi mentransfer dari node ke node. Traces hanya dapat memberikan visibilitas terbatas ke dalam kesehatan aplikasi karena hanya berfokus pada lapisan aplikasi. Untuk mendapatkan gambaran lengkap tentang apa yang terjadi di sistem Anda, penting juga untuk memantau metrik dan log Anda.
Pengumpulan data telemetri merupakan langkah penting dalam proses OpenTelemetry dan observabilitas. Berikutnya, kita akan membahas bagaimana OpenTelemetry digunakan dalam lingkungan cloud yang tersebar.
Tujuan utama OpenTelemetry adalah mengumpulkan dan mengekspor data telemetri. OTel membantu para profesional DevOps dalam debugging dan mengelola aplikasi. Setelah data ini diperoleh, mereka dapat membuat keputusan pengkodean yang tepat dan beradaptasi dengan perubahan serta pertumbuhan organisasi.
Ada tiga cara utama yang digunakan OpenTelemetry dalam DevOps untuk memecahkan masalah aplikasi:
Memprioritaskan Permintaan: OpenTelemetry memiliki kemampuan unik untuk membuat sistem tingkatan untuk permintaan di dalam sistem Anda. Ini penting karena permintaan yang bersaing akan diprioritaskan dengan benar.
Melacak Penggunaan Sumber Daya: Tangkap permintaan antara server mikro untuk mengaitkan penggunaan sumber daya berdasarkan grup. Profesional TI dapat melacak penggunaan sumber daya ini antara sistem bersama.
Observabilitas Layanan Mikro: Pantau kesehatan aplikasi Anda dengan merekam data telemetri dari aplikasi dalam sistem terdistribusi. Memiliki informasi ini akan membantu tim Anda mengoptimalkan dan menjalankan aplikasi Anda dengan benar.
Setiap fitur ini membantu organisasi mengatasi masalah umum yang muncul saat menjalankan aplikasi di berbagai sistem cloud native.
Ada banyak manfaat menggunakan OpenTelemetry untuk proyek sumber terbuka Anda. Setiap manfaat ini secara keseluruhan akan meningkatkan kemampuan dalam observabilitas dan pemantauan. Berbagai manfaat ini menjelaskan mengapa OTel adalah masa depan pemantauan kinerja aplikasi (APM).
Konsistensi: Manfaat utama dari OpenTelemetry adalah konsistensi dalam mengumpulkan data OpenTelemetry di berbagai aplikasi. Kurangnya standar terpadu menciptakan masalah bagi para profesional Dev Ops dan SRE. OTel sekarang menghemat waktu Anda, memberi Anda lebih banyak observabilitas dan mengumpulkan data telemetri tanpa mengubah kode Anda. Adopsi luas teknologi ini di seluruh organisasi telah membuatnya lebih mudah untuk menerapkan penyebaran kontainer. Ini mirip dengan merangkul massal Kubernetes sebagai standar untuk orkestrasi kontainer.
Pengamatan yang disederhanakan: OTel menyederhanakan kemampuan observabilitas karena dapat mengumpulkan data telemetri tanpa mengubah kode atau metadata. Sekarang, pengembang tidak harus tetap berpegang pada backend atau vendor tertentu.
Fleksibilitas: Pengembang dapat memantau metrik kinerja dan penggunaan dari browser web atau perangkat apa pun. Kenyamanan mengamati aplikasi Anda dari lokasi mana pun membuatnya lebih mudah untuk melacak analitik Anda secara real-time.
Secara keseluruhan, manfaat utama OpenTeleMetry adalah dapat membantu Anda mencapai tujuan bisnis yang optimal. Perangkat lunak ini memungkinkan organisasi Anda untuk memahami dan memperbaiki masalah yang dapat berdampak negatif pada pengalaman pelanggan Anda. OpenTelemetry memberi Anda data yang diperlukan untuk menghentikan masalah di jalurnya sebelum layanan Anda terganggu.
Pelajari lebih lanjut: Bagaimana pengembang dan SRE dapat memanfaatkan IBM Instana dan OpenTelemetry untuk mencapai tujuan bisnis mereka secara lebih efektif
Singkatnya, OpenTelemetry bekerja dengan menggabungkan API, SDK, Collector, dan instrumentasi otomatis untuk menarik data dan mengirimkannya ke sistem target. Untuk membuat sistem Anda lebih agnostik, beberapa langkah perlu dilakukan menggunakan komponen-komponen ini.
API akan membuat jejak dengan menginstrumentasikan kode Anda dan menentukan metrik mana yang perlu dikumpulkan. SDK Anda kemudian akan mengumpulkan, menerjemahkan, dan mengirim data itu ke tahap berikutnya. OpenTelemetry Collector memproses data, menyaringnya, dan mengekspornya ke backend yang didukung.
Ada banyak hal yang bergerak dalam hal membuat pengumpulan data Otel berhasil. Berikut ini adalah penjelasan mendalam tentang empat komponen utama OpenTelemetry:
API: Application Performance Interface (API) memungkinkan berbagai komponen perangkat lunak untuk berkomunikasi satu sama lain. Ini mendefinisikan operasi data untuk pencatatan, metrik, dan penelusuran data. Pada dasarnya, API OpenTelemetry memisahkan aplikasi dari infrastruktur, yang memungkinkan pengembang memiliki fleksibilitas untuk mengganti server yang menjalankan cloud Anda. API bersifat khusus pada suatu bahasa (Java, Ruby, JavaScript, Python, dan masih banyak lagi).
SDK: Profesional DevOps dapat memanfaatkan SDK bahasa untuk memungkinkan API OpenTelemetry (OTel) menghasilkan data telemetri dalam bahasa pemrograman yang mereka pilih. Setelah Anda menghasilkan data ini, Anda dapat mengekspor informasi tersebut ke backend yang Anda inginkan. OpenTelemetry SDK memungkinkan integrasi antara instrumentasi manual dari pustaka umum dan instrumentasi manual yang diterapkan dalam aplikasi. SDK adalah jembatan antara API dan kolektor. Ini adalah singkatan dari software development kit.
Kolektor: OpenTelemetry Collector terdiri dari eksportir, prosesor, agregat, dan penerima untuk data telemetri. Ini dapat mendukung Prometheus, OpenTelemetry Protocol (OTLP), Jaeger, Zipkin, dan alat berpemilik lainnya. Kolektor dapat mengambil data telemetri dan mengirimkannya ke beberapa backend observabilitas. Terakhir, ini dapat membantu organisasi Anda sebagai saluran pemrosesan dan dengan memfilter data Anda sebelum mengekspor. Ini membantu memecahkan masalah potensial dengan lebih cepat.
Instrumentasi Otomatis: Penting untuk diperhatikan, bahwa instrumentasi otomatis berbeda di antara berbagai bahasa pemrograman. Instrumentasi otomatis menghilangkan banyak pengkodean manual yang membosankan dari persamaan.
Setiap komponen ini membentuk kerangka kerja yang menjelaskan mengapa OpenTelemetry adalah pilihan yang tepat untuk memonitor aplikasi Anda.
OpenTracing adalah proyek sumber terbuka yang membantu pengembang dalam menginstruksikan kode untuk penelusuran terdistribusi melalui API yang netral terhadap vendor. Ini bermanfaat karena tidak memaksa Anda untuk tetap menggunakan satu vendor atau produk tertentu.
Proyek ini tersedia dalam sembilan bahasa berbeda, termasuk Ruby, Java, dan Python. DevOps dan profesional TI dapat memanfaatkan pelacakan terdistribusi untuk mengoptimalkan dan men-debug kode dalam arsitektur perangkat lunak. Ini sangat berguna ketika berhadapan dengan layanan mikro.
CNCF menciptakan OpenTelemetry dengan menggabungkan OpenTracing dan OpenCensus menjadi satu platform. Ada lebih dari 10.000 kontribusi dari 300 perusahaan sejak proyek tersebut diterapkan. Upaya kolaboratif yang luas dan pengembangan berkelanjutan telah menciptakan akses ke berbagai instrumentasi yang tak tertandingi di industri ini.
Jika Anda akan memilih di antara dua platform sumber terbuka, akan lebih bijaksana untuk menggunakan OpenTelemetry karena memiliki lebih banyak kemampuan.
OpenTelemetri mengubah lingkungan observabilitas. Seperti Kubernetes yang telah menjadi standar dalam orkestrasi kontainer, OpenTelemetry kini banyak diadopsi sebagai standar untuk observabilitas. Adopsi dan popularitas OpenTelemetry diperkirakan akan terus meningkat berkat berbagai manfaat yang telah disebutkan sebelumnya.
Tim proyek OpenTelemetry terus berupaya menstabilkan komponen inti perangkat lunak dan mengembangkan instrumentasi otomatis. Setelah keluar dari tahap beta, OpenTelemetry diproyeksikan akan menjadi standar utama untuk kerangka kerja observabilitas di ekosistem cloud native.
Intinya adalah bahwa OpenTelemetry bukanlah sebuah backend observabilitas, melainkan sebuah alat yang membuat pengumpulan dan pengiriman data telemetri menjadi lebih efisien. Instana adalah bagian terakhir dari persamaan ini sebagai alat observabilitas. Format OpenTelemetry dan SDK dapat menjadi jalur migrasi untuk sistem lama dan teknologi yang tidak didukung.
Organisasi kami berkomitmen untuk sepenuhnya merangkul OTel untuk membantu Anda mencapai tujuan bisnis melalui pengumpulan data yang disederhanakan. Kami sedang berupaya memberikan visibilitas yang sama kepada pengguna akhir yang mereka dapatkan dengan AutoTrace Instana melalui integrasi kami dengan OpenTelemetry. Cobalah Sandbox kami tanpa biaya hari ini.
Observabilitas memberikan visibilitas mendalam ke dalam aplikasi terdistribusi modern untuk identifikasi dan penyelesaian masalah otomatis yang lebih cepat.
Perangkat lunak sumber terbuka dikembangkan melalui kolaborasi terbuka. Kode sumber tersebut tersedia bagi siapa saja untuk digunakan, memeriksa, mengubah, dan mendistribusikan kembali.
Mengotomatiskan tugas-tugas operasi TI, mempercepat pengiriman perangkat lunak, dan meminimalkan risiko TI dengan rekayasa keandalan situs.
Pelajari bagaimana pemantauan cloud memberikan visibilitas, otomatisasi, dan kontrol untuk memantau serta mengoptimalkan kinerja situs web dan aplikasi Anda.