Memilih pendekatan instrumentasi

Halaman ini berisi rekomendasi untuk menginstrumentasikan aplikasi Anda di berbagai platform Google Cloud, seperti Google Kubernetes Engine (GKE) dan Cloud Run. Jika aplikasi Anda belum diinstrumentasikan, gunakan rekomendasi ini sebagai panduan tentang cara menginstrumentasikan aplikasi untuk mengirim data telemetri ke Google Cloud. Rekomendasi di halaman ini bukan satu-satunya solusi, dan pendekatan lainnya dapat berfungsi. Untuk mendapatkan panduan tambahan, hubungi Dukungan Google Cloud.

Ada rekomendasi untuk hal berikut:

Untuk mengetahui informasi tentang contoh instrumentasi, lihat dokumen yang tercantum di bagian Contoh kode.

GKE

Untuk mengetahui informasi umum tentang GKE, lihat ringkasan GKE.

Jenis Rekomendasi
Regresi

Sebaiknya gunakan Google Cloud Managed Service for Prometheus.

Untuk instrumentasi, lakukan salah satu hal berikut:

Trace

Lakukan tindakan berikut:

  1. Gunakan OpenTelemetry SDK dan pengekspor OTLP untuk bahasa Anda.
  2. Konfigurasi kolektor OpenTelemetry untuk mengirim rekaman aktivitas OTLP ke Google Cloud.
Log

Konfigurasi aplikasi Anda untuk menghasilkan log terstruktur JSON ke stdout dan stderr. Untuk mengetahui daftar framework, lihat Framework logging yang direkomendasikan.

GKE mengumpulkan log yang ditulis ke stdout dan stderr secara otomatis. Untuk informasi selengkapnya, lihat Tentang log GKE.

Compute Engine

Untuk mengetahui informasi umum tentang Compute Engine, lihat Instance virtual machine.

Jenis Rekomendasi
Metrik dan Trace

Lakukan tindakan berikut:

  1. Gunakan OpenTelemetry SDK dan pengekspor OTLP untuk bahasa Anda.
  2. Menggunakan Agen Operasional untuk mengumpulkan metrik dan trace. Sebagai contoh, lihat Mengumpulkan metrik dan trace OpenTelemetry Protocol (OTLP).

Atau, jika Anda hanya ingin mengonfigurasi pengumpulan untuk metrik format Prometheus, Anda dapat menggunakan Penerima Prometheus Agen Operasional untuk mengumpulkan metrik yang diinstrumentasikan menggunakan library klien Prometheus atau OpenTelemetry SDK.

Log

Lakukan tindakan berikut:

  1. Konfigurasi aplikasi Anda untuk menghasilkan log terstruktur JSON ke sebuah file. Untuk mengetahui daftar framework, lihat Framework logging yang direkomendasikan.
  2. Menginstal Agen Operasional dan mengonfigurasi penerima. Untuk contohnya, lihat Penerima logging.

Cloud Run

Untuk mengetahui informasi umum tentang Cloud Run, lihat Apa itu Cloud Run.

Jenis Rekomendasi
Metrik dan Trace

Lakukan tindakan berikut:

  1. Gunakan OpenTelemetry SDK dan pengekspor OTLP untuk bahasa Anda.
  2. Konfigurasi file bantuan OpenTelemetry untuk mengumpulkan metrik dan trace. Untuk contoh, lihat Menulis metrik OTLP menggunakan file bantuan OpenTelemetry.
  3. Tetapkan CPU agar selalu dialokasikan di Cloud Run. Karena instrumentasi OpenTelemetry melakukan pemrosesan latar belakang, kami merekomendasikan agar layanan Cloud Run berinstrumen menggunakan CPU yang selalu dialokasikan. Untuk mengetahui informasi selengkapnya, lihat alokasi CPU (layanan).

Atau, jika Anda hanya ingin mengonfigurasi koleksi untuk metrik format Prometheus, Anda dapat menggunakan sidecar Prometheus untuk Cloud Run untuk mengumpulkan metrik yang diinstrumentasikan menggunakan library klien Prometheus atau OpenTelemetry SDK.

Log

Konfigurasi aplikasi Anda untuk menghasilkan log terstruktur JSON ke stdout dan stderr. Untuk mengetahui daftar framework, lihat Framework logging yang direkomendasikan.

Cloud Run mengumpulkan log yang ditulis ke stdout dan stderr secara otomatis. Untuk mengetahui informasi selengkapnya, lihat Menulis log container.

Cloud Functions

Untuk mengetahui informasi umum tentang Cloud Functions, lihat Ringkasan Cloud Functions.

Jenis Rekomendasi
Regresi Penulisan langsung metrik tidak didukung di Cloud Functions. Untuk membuat metrik, sebaiknya gunakan metrik berbasis log.
Trace Gunakan SDK dan pengekspor Cloud Trace untuk bahasa Anda.
Log

Konfigurasi aplikasi Anda untuk menghasilkan log terstruktur JSON ke stdout dan stderr. Untuk mengetahui daftar framework, lihat Framework logging yang direkomendasikan.

Cloud Functions mengumpulkan log yang ditulis ke stdout dan stderr secara otomatis. Untuk mengetahui informasi selengkapnya, baca Melihat dan menulis log Cloud Function.

App Engine

Untuk informasi umum tentang App Engine, lihat Ringkasan App Engine.

Jenis Rekomendasi
Regresi Gunakan SDK dan pengekspor Cloud Monitoring untuk bahasa Anda.
Trace Gunakan SDK dan pengekspor Cloud Trace untuk bahasa Anda.
Log

Konfigurasi aplikasi Anda untuk menghasilkan log terstruktur JSON ke stdout dan stderr. Untuk mengetahui daftar framework, lihat Framework logging yang direkomendasikan.

App Engine mengumpulkan log yang ditulis ke stdout dan stderr secara otomatis. Untuk informasi selengkapnya, lihat Menulis dan melihat log.

Framework logging yang direkomendasikan

Untuk mengumpulkan log, sebaiknya gunakan framework yang dapat dikonfigurasi untuk menghasilkan output objek JSON yang diserialisasi ke stdout, stderr, atau ke file. Agen logging, baik yang terintegrasi maupun terinstal, akan menyalin file dan menulis log terstruktur untuk Cloud Logging. Untuk menulis data log, kami merekomendasikan hal berikut:

Contoh kode

Untuk contoh kode yang menggambarkan cara menginstrumentasikan aplikasi untuk mengirim telemetri ke Google Cloud, lihat artikel berikut:

Referensi ke OpenTelemetry

Bagian ini menyediakan link ke OpenTelemetry SDK, dan pengekspor untuk OTLP, Cloud Trace, dan Cloud Monitoring.

Referensi umum:

Go

Java

JavaScript

Python