Filter Cloud Trace

Filter Cloud Trace memungkinkan Anda membuat kueri metode Trace API list untuk mengambil hanya rekaman aktivitas yang cocok dengan kriteria tertentu, seperti nama rentang, latensi minimum, atribut HTTP, atau label.

Ekspresi filter ini tidak berlaku untuk halaman Trace Explorer di konsol Google Cloud . Di Trace Explorer, Anda dapat memfilter rekaman aktivitas dengan menggunakan filter yang telah ditentukan sebelumnya di panel Filter rentang atau menggunakan panel Filter. Untuk mengetahui informasi selengkapnya, lihat Menemukan dan menjelajahi rekaman aktivitas.

Ringkasan filter

Filter rekaman aktivitas terdiri dari urutan perbandingan yang disebut istilah. Trace harus cocok dengan semua istilah dalam filter agar dapat dipilih. Misalnya, filter berikut mencocokkan rekaman aktivitas yang memiliki latensi satu detik atau lebih dan yang berisi rentang bernama /modules.GetNumInstances:

+span:/modules.GetNumInstances latency:1s

Semua perbandingan string peka huruf besar/kecil.

Atribut Boolean

Untuk menentukan nilai atribut Boolean, gunakan false untuk salah dan true untuk benar:

Client:true

Karakter khusus

Nilai sederhana, yaitu nilai yang cocok dengan ekspresi reguler [a-zA-Z0-9./_][a-zA-Z0-9./_-]*, dapat diberikan tanpa tanda petik:

environment:production
path:/index.html
error_code:200

Nilai yang menyertakan karakter lain, termasuk spasi kosong, harus diapit oleh karakter tanda petik ganda ("):

my-label:"Notice: This value contains spaces and a colon"

Untuk menelusuri karakter tanda kutip ganda atau karakter garis miring terbalik (\) dalam string yang dikutip, gunakan garis miring terbalik untuk meng-escape karakter:

my-label:"Notice: This value contains spaces, a colon, a \"quote\", and a backslash (\\)"

Filter sintaksis

Di halaman ini, NAME mengacu pada nama kolom, dan VALUE mengacu pada nilai pasangan key-value. String _PREFIX dan _EXACT adalah indikasi visual apakah pengujian merupakan pengujian awalan atau pencocokan persis. Misalnya, root:[NAME_PREFIX] berarti bahwa nama rentang root harus dimulai dengan [NAME_PREFIX].

Bagian lain di halaman ini menjelaskan sintaksis filter untuk Trace API.

Contoh filter permintaan

Daftar berikut menjelaskan istilah filter:

root:[NAME_PREFIX]

Nama rentang root rekaman aktivitas harus diawali dengan [NAME_PREFIX]. Misalnya, filter berikut cocok dengan rekaman aktivitas bernama "/_ah/background", tetapi tidak cocok dengan rekaman aktivitas bernama "/_ahx/background":

root:/_ah/
+root:[NAME]

Nama root span rekaman aktivitas harus [NAME], persis. Contoh:

+root:/_ah/background
[NAME_PREFIX]

Sintaksis ini adalah pintasan untuk root:[NAME_PREFIX].

+[NAME]

Sintaksis ini adalah pintasan untuk +root:[NAME].

span:[NAME_PREFIX]

Rekaman aktivitas harus memiliki setidaknya satu rentang yang namanya diawali dengan [NAME_PREFIX]. Contoh:

span:/modules.
+span:[NAME]

Rekaman aktivitas harus memiliki setidaknya satu rentang yang namanya [NAME], persis. Misalnya:

+span:/modules.GetNumInstances
latency:[DURATION]

Rekaman aktivitas harus memiliki latensi keseluruhan yang lebih besar dari atau sama dengan [DURATION]. Durasi dinyatakan sebagai bilangan bulat yang diikuti dengan penentu unit: s untuk detik, ms untuk milidetik, atau ns untuk nanodetik. Jika tidak ada penentu satuan, maka satuannya adalah milidetik. Misalnya, empat durasi berikut sama:

12s 12000ms 12000000ns 12000
label:[LABEL_KEY]

Rekaman aktivitas harus berisi kunci label yang ditentukan, persisnya. Nilai label (jika ada) tidak penting. Contoh:

label:/http/url
[LABEL_KEY]:[VALUE_PREFIX]

Rekaman aktivitas harus berisi kunci label yang ditentukan, persis, dan nilai label harus dimulai dengan [VALUE_PREFIX]. Misalnya, istilah berikut cocok dengan rekaman aktivitas yang versi App Engine-nya dimulai dengan "2017":

g.co/gae/app/module_version:2017
+[LABEL_KEY]:[VALUE_EXACT]

Rekaman aktivitas harus berisi kunci dan nilai label yang ditentukan, persis sama. Contoh:

+g.co/gae/app/module_version:201750925t173233.387410594824284458
method:[VALUE_PREFIX]

Sintaksis ini adalah pintasan untuk pengujian label /http/method:[VALUE_PREFIX].

+method:[VALUE_EXACT]

Sintaksis ini adalah pintasan untuk pengujian label +/http/method:[VALUE_EXACT].

url:[VALUE_PREFIX]

Sintaksis ini adalah pintasan untuk pengujian label /http/url:[VALUE_PREFIX].

+url:[VALUE_EXACT]

Sintaksis ini adalah pintasan untuk pengujian label +/http/url:[VALUE_EXACT].

Contoh penelusuran rentang akar

Untuk membatasi istilah penelusuran hanya pada rentang root, tambahkan tanda sisipan (^) sebelum istilah penelusuran dan setelah tanda plus opsional (+). Untuk kolom Filter di halaman Trace Explorer, jika Anda menambahkan anotasi +^, maka anotasi tersebut akan dikonversi menjadi ^+ saat Anda menekan Enter.

Daftar berikut menunjukkan beberapa istilah penelusuran hanya rentang akar dan persamaannya:

^label:[LABEL_KEY]
Ini adalah penelusuran rentang akar untuk label:[LABEL_KEY].
^[LABEL_KEY]:[VALUE_PREFIX]
Ini adalah penelusuran rentang akar untuk [LABEL_KEY]:[VALUE_PREFIX].
+^[LABEL_KEY]:[VALUE]
Ini adalah penelusuran rentang akar untuk +[LABEL_KEY]:[VALUE].
^method:[VALUE_PREFIX]
Ini adalah penelusuran rentang akar untuk method:[VALUE_PREFIX].
+^method:[VALUE]
Ini adalah penelusuran rentang akar untuk +method:[VALUE].
^url:[VALUE_PREFIX]
Ini adalah penelusuran rentang akar untuk url:[VALUE_PREFIX].
+^url:[VALUE]
Ini adalah penelusuran rentang akar untuk +url:[VALUE].
^span:[NAME_PREFIX]
Ini setara dengan root:[NAME_PREFIX].
+^span:[NAME]
Ini setara dengan +root:[NAME].

Anda dapat menyesuaikan penelusuran lebih lanjut dengan membuat kueri dengan istilah campuran. Misalnya,

+^url:/main /images method:200

mencocokkan rekaman aktivitas saat label rentang root /http/url persis "/main", nama rentang root diawali dengan /images, dan rentang apa pun memiliki label /http/method dengan nilai 200.

Pemecahan masalah

Bagian berikut menjelaskan cara menyelesaikan masalah umum terkait filter Pelacakan.

Performa lambat

Jika filter rekaman aktivitas Anda rumit, filter tersebut akan memerlukan waktu lebih lama untuk dijalankan dan dapat mencapai batas waktu. Untuk meningkatkan performa, sederhanakan filter.

Tidak ada hasil

Jika filter Anda tidak menampilkan rekaman aktivitas, periksa hal berikut:

  • Pastikan tidak ada spasi dalam filter, kecuali spasi yang memisahkan perbandingan.

  • Pastikan huruf besar/kecil dan ejaan semua kata dalam filter sudah benar. Misalnya, jika Anda salah mengeja kata kunci seperti method:GET, maka filter ditafsirkan sebagai label:method:GET, yang tidak cocok dengan jejak mana pun.

  • Untuk menguji istilah filter satu per satu, buka metode API list, lalu gunakan APIs Explorer. Jika salah satu istilah tidak menampilkan hasil, istilah tersebut mungkin menjadi alasan tidak ada data yang ditampilkan.

    APIs Explorer terbuka saat halaman menampilkan panel berjudul Try this method. Jika perlu, klik Try it, yang akan membuka APIs Explorer.