Mengaitkan metrik dan rekaman aktivitas menggunakan contoh

Dokumen ini menjelaskan contoh, yang merupakan contoh titik data yang dilampirkan ke titik data metrik. Salah satu penggunaan contoh adalah untuk menyimpan link ke rekaman aktivitas, yang memungkinkan Anda mengorelasi data metrik dan rekaman aktivitas. Dokumen ini juga menjelaskan cara menggunakan OpenTelemetry untuk membuat contoh.

Tentang contoh

Contoh adalah cara untuk mengaitkan data arbitrer dengan data metrik. Anda dapat menggunakannya untuk melampirkan data non-metrik ke pengukuran. Salah satu penggunaan contoh adalah mengaitkan data rekaman aktivitas dengan data metrik. Di Cloud Monitoring, contoh dapat disertakan ke data metrik yang memiliki jenis nilai Distribution. Metrik nilai distribusi mengumpulkan banyak pengukuran dan mengelompokkan pengukuran tersebut ke dalam bucket. Setiap "titik" adalah histogram, yang merupakan array yang mencantumkan jumlah bucket. Pengukuran sebenarnya tidak dipertahankan, hanya jumlah bucket. Untuk informasi selengkapnya, lihat Tentang metrik nilai distribusi.

Saat titik data metrik ditulis, array objek Exemplar dapat dilampirkan ke data tersebut. Contoh, jika digunakan, akan melampirkan informasi yang berguna ke data metrik. Misalnya, saat OpenTelemetry menulis contoh, OpenTelemetry akan melampirkan link ke span rekaman aktivitas saat ini.

Data histogram biasanya ditampilkan menggunakan peta panas. Jika "titik" berisi contoh, Cloud Monitoring akan menganotasi peta panas dengan titik:

  • Untuk melihat informasi ringkasan tentang titik metrik, aktifkan tooltip untuk anotasi.
  • Untuk mengakses rekaman aktivitas, pilih anotasi.

Misalnya, aplikasi contoh yang dijelaskan dalam Membuat trace dan metrik dengan Go menggunakan OpenTelemetry untuk menulis data metrik, data trace, dan contoh. Screenshot berikut menunjukkan nilai metrik prometheus/http_server_duration_milliseconds/histogram setelah beberapa eksekusi aplikasi:

Contoh peta panas yang menampilkan beberapa contoh.

Screenshot sebelumnya menampilkan beberapa contoh. Tooltip untuk satu contoh diperluas, dan menampilkan tanggal, nama rekaman aktivitas, persentil, dan nilai latensi.

Saat anotasi dipilih, rekaman aktivitas yang ditautkan dalam contoh akan ditampilkan:

Contoh detail rekaman aktivitas untuk contoh.

Jika informasi yang ditampilkan tidak cukup mendetail, Anda dapat memilih Lihat di Trace, yang akan membuka halaman Trace Explorer. Di halaman tersebut, Anda dapat melihat atribut rekaman aktivitas dan mengakses link ke entri log.

Cara mengaktifkan contoh OpenTelemetry

Seperti yang diilustrasikan pada contoh sebelumnya, Anda dapat mengonfigurasi OpenTelemetry untuk menulis contoh yang menautkan span rekaman aktivitas saat ini ke pengukuran metrik. Namun, agar contoh dapat ditulis, Anda harus melakukan hal berikut:

  1. Konfigurasikan SDK metrik dan trace OpenTelemetry.
  2. Untuk menyertakan contoh pada instrumentasi kustom, pastikan metrik dicatat dalam span, dan Anda meneruskan konteks dari span dengan pengukuran metrik.

    Misalnya, fungsi computeSubrequests mengikuti panduan sebelumnya. Fungsi subRequestsHistogram.Record dipanggil setelah tracer.Start dan sebelum span.End, yang ditangguhkan. Perhatikan juga bahwa konteks, ctx, diteruskan dari tracer.Start ke fungsi Record:

    func computeSubrequests(r *http.Request, subRequests int) error {
    	// Add custom span representing the work done for the subrequests
    	ctx, span := tracer.Start(r.Context(), "subrequests")
    	defer span.End()
    
    	// Make specified number of http requests to the /single endpoint.
    	for i := 0; i < subRequests; i++ {
    		if err := callSingle(ctx); err != nil {
    			return err
    		}
    	}
    	// record number of sub-requests made
    	subRequestsHistogram.Record(ctx, int64(subRequests))
    	return nil
    }
    

    Untuk informasi selengkapnya tentang contoh ini, lihat Menambahkan pelacakan dan metrik kustom ke aplikasi Anda.

Langkah selanjutnya