
Penulis: Ted Young, Pritam Shah dan Komite untuk Spesifikasi Teknis (Carlos Alberto, Bogdan Drutu, Sergey Kanzhelev dan Yuri Shkuro).
Proyek bersama memperoleh nama: http://opentelemetry.io
Sangat, sangat singkat:
- Kami menciptakan satu set perpustakaan dan spesifikasi baru yang seragam untuk kemungkinan pemantauan telemetri. Ini akan menggabungkan proyek OpenTracing dan OpenCensus, dan juga menyediakan cara yang didukung untuk migrasi.
- Implementasi referensi di Jawa akan tersedia pada 24 April, pengerjaan implementasi dalam bahasa lain akan dimulai secara penuh mulai 8 Mei 2019. Anda dapat melihat jadwalnya di sini .
- Pada September 2019, paritas direncanakan dengan proyek yang ada untuk C #, Golang, Java, NodeJS, dan Python. Banyak pekerjaan menunggu kita, tetapi kita dapat mengatasinya jika kita bekerja secara paralel. Jika Anda tertarik untuk berpartisipasi dalam proyek ini, silakan mendaftar dan beri tahu kami bagaimana Anda ingin berkontribusi.
- Ketika implementasi dalam setiap bahasa menjadi matang, proyek OpenTracing dan OpenCensus yang sesuai akan ditutup. Ini berarti membekukan proyek lama, dan proyek baru akan terus mendukung alat yang ada selama dua tahun, menggunakan kompatibilitas ke belakang.
Tinjauan Proyek

Kami bergabung! Tujuan tertinggi adalah untuk menempatkan proyek OpenTracing dan OpenCensus ke dalam satu proyek bersama.
Inti dari proyek baru ini adalah seperangkat antarmuka yang bersih dan dipikirkan dengan matang, termasuk perakitan tradisional perpustakaan yang mengimplementasikan antarmuka ini dalam bentuk apa yang disebut SDK Ceri pada kue akan menjadi standar yang direkomendasikan untuk protokol data dan kawat, termasuk bagian infrastruktur umum.
Hasilnya akan menjadi sistem telemetri lengkap yang cocok untuk memantau layanan-layanan microser dan tipe-tipe lain dari sistem terdistribusi modern, yang kompatibel dengan sebagian besar OSS utama dan program inti komersial.
Peristiwa Penting
24 April - Calon referensi diajukan untuk ditinjau.
8.05 - Sebuah tim dibentuk, mulai bekerja dalam semua bahasa.
05.20 - Peluncuran resmi proyek di Kubecon Barcelona.
6.09 - Implementasi dalam C #, Golang, Java, NodeJS, dan Python mencapai paritas dengan teman sebaya.
6.11 - Penyelesaian resmi proyek OpenTracing dan OpenCensus.
11.20 - Pesta perpisahan untuk menghormati penyelesaian proyek di Observability Summit, Kubecon San Diego.
Garis Waktu Konvergensi

Migrasi untuk setiap bahasa termasuk membangun SDK yang siap untuk ditempatkan di industri, alat untuk perpustakaan populer, dokumentasi, CI, alat kompatibilitas mundur, dan penutupan proyek OpenCensus dan OpenTracing terkait (matahari terbenam). Kami menetapkan tujuan yang ambisius untuk September 2019 - untuk mencapai paritas untuk bahasa C #, Golang, Jawa, NodeJS, dan Python. Kami akan menggeser tanggal matahari terbenam sampai semua bahasa siap. Tetapi lebih baik untuk menghindari ini.
Saat melihat tujuan, harap pikirkan tentang partisipasi pribadi Anda, beri tahu kami dengan mengisi formulir pendaftaran , atau dengan menyapa dalam obrolan Gitter dari proyek OpenTracing dan OpenCensus . Lihat grafik sebagai infografis di sini .
Target: Draf pertama spesifikasi antarbahasa (selesai pada 8 Mei)
Penting untuk bekerja bersama, bahkan ketika bekerja secara paralel dalam berbagai bahasa. Spesifikasi antarbahasa menyediakan panduan untuk proyek. Kedengarannya biasa-biasa saja, tetapi itu adalah jaminan mendukung sistem lengkap yang tampaknya akrab terlepas dari bahasa pemrograman.
Persyaratan wajib untuk spesifikasi konsep pertama untuk bahasa X:
- Definisi terminologi umum.
- Model untuk menggambarkan transaksi yang didistribusikan, statistik, dan metrik.
- Klarifikasi tentang masalah-masalah penting yang muncul selama implementasi.
Tujuan ini memblokir sisa pekerjaan, draft pertama harus selesai pada 8 Mei.
Target: draft pertama untuk spesifikasi data (selesai pada 6 Juli)
Spesifikasi data mendefinisikan format data umum untuk jejak dan metrik, oleh karena itu, data yang diekspor oleh semua proses dapat diproses oleh infrastruktur telemetri yang sama terlepas dari proses pembuatan data. Ini termasuk skema data untuk model jejak yang dijelaskan dalam spesifikasi lintas-bahasa. Juga termasuk definisi metadata untuk operasi umum yang digunakan jejak untuk menangkap: misalnya, permintaan HTTP, kesalahan, dan permintaan basis data. Konvensi semantik ini adalah contohnya.
Draf pertama didasarkan pada format data OpenCensus saat ini dan akan berisi yang berikut:
- Skema data yang mengimplementasikan spesifikasi antarbahasa.
- Definisi metadata untuk operasi umum.
- Definisi JSON dan Protobuf.
- Implementasi pelanggan referensi.
Harap dicatat bahwa ada juga protokol kabel yang mendistribusikan jejak in-band, dan yang kami juga ingin distandarisasi. Format distribusi Trace-Context sedang dikembangkan melalui W3C.
Target: Paritas untuk semua bahasa utama yang didukung (selesai pada 6 September)
Kita harus mencapai keseimbangan untuk ekosistem bahasa saat ini dalam rangka mengganti proyek lama dengan yang baru.
- Definisi antarmuka untuk penelusuran, metrik, dan distribusi konteks berdasarkan spesifikasi antarbahasa.
- SDK siap pakai yang mengimplementasikan antarmuka ini, mengekspor Trace-Data. Jika memungkinkan, SDK akan dibuat dengan memigrasi implementasi yang ada dari OpenCensus.
- Toolkit untuk perpustakaan populer saat ini dicakup oleh OpenTracing dan OpenCensus.
Kami juga menghargai kompatibilitas ke belakang dan ingin memastikan transisi yang lancar dari proyek yang ada.
- SDK baru akan memiliki kompatibilitas ke belakang dengan antarmuka OpenTracing saat ini. Mereka akan memungkinkan alat OpenTracing lawas untuk bekerja bersama dengan alat baru dalam proses yang sama, yang akan memungkinkan pengguna untuk secara bertahap mentransfer pengalaman mereka.
- Ketika SDK baru siap, rencana pembaruan akan dibuat untuk pengguna OpenCensus saat ini. Seperti dengan OpenTracing, alat lawas dapat terus bekerja bersama yang baru.
- Pada bulan November, OpenTracing dan OpenCensus akan ditutup karena menerima perubahan. Kompatibilitas mundur dengan alat lawas akan dipertahankan selama dua tahun.
Membuat SDK terbaik di kelasnya untuk setiap bahasa membutuhkan banyak pekerjaan, dan inilah yang paling kita butuhkan.
Target: dokumentasi inti (selesai pada 6 September)
Faktor penentu keberhasilan untuk setiap proyek open source adalah dokumentasi. Kami menginginkan dokumentasi dan alat pelatihan kelas satu, penulis teknis kami adalah pengembang paling aktif dalam proyek ini. Melatih pengembang untuk memantau perangkat lunak dengan benar adalah salah satu dampak terpenting yang ingin kita miliki di dunia.
Bagian-bagian berikut dari dokumentasi adalah minimum yang diperlukan untuk memulai:
- Orientasi proyek.
- Observabilitas 101.
- Memulai.
- Panduan Bahasa (secara terpisah untuk masing-masing).
Kami mengundang penulis dari semua level! Situs baru kami didasarkan pada Hugo yang menggunakan markup umum, sehingga sangat mudah untuk berkontribusi.
Target: Registry v1.0 (selesai pada 6 Juli)
Registry adalah komponen penting lainnya, versi OpenTracing Registry yang ditingkatkan .
- Temukan perpustakaan, plugin, installer, dan komponen lainnya dengan mudah.
- Manajemen komponen Registry yang mudah.
- Anda dapat mengetahui fitur-fitur SDK apa yang tersedia di setiap bahasa.
Jika Anda tertarik pada desain, antarmuka, dan UX, kami memiliki proyek yang bagus untuk partisipasi pribadi.
Target: infrastruktur untuk pengujian dan rilis perangkat lunak (selesai pada 6 September)
Agar kami dapat terus memberikan kode aman yang dapat Anda andalkan, kami memiliki komitmen proyek untuk membuat saluran pipa berkualitas untuk menguji dan merilis perangkat lunak. Beri tahu kami jika Anda dapat menangani konveyor untuk pengujian, mengukur kinerja, dan merilis perangkat lunak. Kami jelas menunjukkan tingkat kesiapan produksi, dan kematangan infrastruktur pengujian akan menjadi faktor penentu utama bagi kami.
Tujuan: menutup proyek OpenTracing dan OpenCensus (selesai pada 6 November)
Kami berencana untuk mulai menutup proyek-proyek lama mulai 6 September, jika proyek baru mencapai keseimbangan dengan mereka. 2 bulan kemudian, di paritas semua bahasa, kami berencana untuk menutup proyek OpenTracing dan OpenCensus. Ini harus dipahami sebagai berikut:
- repositori akan dibekukan, tidak akan ada lagi pengeditan.
- Masa dukungan dua tahun direncanakan untuk toolkit saat ini.
- pengguna akan dapat memutakhirkan ke SDK baru menggunakan alat yang sama.
- pembaruan bertahap akan dimungkinkan.
Bergabunglah sekarang
Kami akan senang atas bantuan apa pun, karena ini adalah proyek besar. Jika Anda tertarik untuk belajar tentang observabilitas, sekaranglah saatnya!