Dokumen ini menjelaskan cara menambahkan kode kemampuan observasi ke aplikasi Anda dengan menggunakan OpenTelemetry. OpenTelemetry menyediakan library instrumentasi yang menghasilkan telemetri untuk framework populer. Anda dapat menambah telemetri yang dihasilkan library dengan menambahkan instrumentasi kustom yang mengukur perilaku khusus aplikasi Anda.
Prinsip dan konsep yang dijelaskan dalam dokumen ini dapat diterapkan ke aplikasi yang ditulis dalam semua bahasa yang didukung oleh OpenTelemetry. Untuk mempelajari instrumentasi lebih lanjut, lihat dokumen berikut:
Kode contoh, yang merupakan aplikasi Go yang sama yang dijelaskan dalam contoh instrumentasi Go, tersedia di GitHub. Untuk melihat contoh lengkap, di toolbar contoh, pilih logo GitHub.
Sebelum memulai
Aktifkan Cloud Logging, Cloud Monitoring, dan Cloud Trace API.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin
(roles/serviceusage.serviceUsageAdmin),
yang berisi izin serviceusage.services.enable. Pelajari cara memberikan
peran.
Membuat trace kustom
Untuk membuat trace kustom dari aplikasi Anda, tambahkan kode instrumentasi yang membuat rentang OpenTelemetry. Di OpenTelemetry, rentang adalah elemen dasar untuk trace.
Untuk membuat rentang, lakukan hal berikut:
Ubah aplikasi Anda untuk mendapatkan OpenTelemetry
Tracer. Di OpenTelemetry, tracer adalah pembuat rentang. Anda dapat memperoleh tracer seperti yang ditunjukkan dalam kode berikut:Nama tracer, yang diwakili oleh
scopeName, mengidentifikasi cakupan instrumentasi dari trace yang dihasilkan.Gunakan instance
traceruntuk membuat rentang. Dalam contoh kode berikut, fungsicomputeSubrequestsmenghasilkan rentang setiap kali dipanggil:Dalam contoh kode sebelumnya, rentang yang dihasilkan dari fungsi
computeSubrequestsmewakili pekerjaan yang dilakukan oleh seluruh fungsi. Hal ini karena langkah pertama fungsi adalah memulai rentang baru menggunakantracer.Startdan kata kuncidefersebelumspan.End()memastikan bahwa rentang diakhiri tepat sebelum fungsi keluar.
Membuat metrik kustom
Untuk membuat metrik dari aplikasi Anda, tambahkan kode instrumentasi yang mencatat pengukuran yang dilakukan selama eksekusi aplikasi.
Untuk membuat metrik, lakukan hal berikut:
Ubah aplikasi Anda untuk mendapatkan OpenTelemetry
Meter. Di OpenTelemetry, a meter menyediakan akses ke instrumen metrik untuk mencatat metrik. Anda dapat memperoleh meter seperti yang ditunjukkan dalam kode berikut:Nama meter, yang diwakili oleh
scopeName, mengidentifikasi cakupan instrumentasi dari metrik yang dihasilkan.Gunakan instance
meteruntuk membuat instrumen yang dapat mencatat metrik. Misalnya, dalam kode berikut, kita menggunakanmeteruntuk membuat OpenTelemetry Histogram:Kode sebelumnya menghasilkan histogram bernama
sleepHistogram.Gunakan instance
sleepHistogramuntuk mencatat waktu tidur, yang ditentukan saat fungsirandomSleepdipanggil:Metrik yang dicatat dari instrumen ini diekspor dari aplikasi Anda berdasarkan konfigurasi pengekspor OpenTelemetry.
Langkah berikutnya
- Mengorelasikan metrik dan trace menggunakan contoh
- OpenTelemetry
- Instrumentasi OpenTelemetry
- Model Data Metrik OpenTelemetry