Dokumen ini menjelaskan cara mengonfigurasi filter saat Anda menggunakan
metode list Cloud Trace API.
Filter memungkinkan Anda menentukan satu atau beberapa kondisi yang harus dipenuhi agar trace dapat ditampilkan.
Halaman ini tidak berlaku untuk halaman Trace Explorer. Untuk memfilter data yang ditampilkan di halaman tersebut, gunakan filter yang telah ditentukan, yang tercantum di panel Span filters, atau gunakan kolom Filter. Untuk mengetahui informasi selengkapnya, lihat Menemukan dan menjelajahi trace.
Ringkasan filter
Filter trace terdiri dari urutan perbandingan yang disebut istilah. Trace harus cocok dengan semua istilah dalam filter agar dapat dipilih. Misalnya, filter berikut cocok dengan trace yang memiliki latensi satu detik atau lebih, dan yang berisi rentang bernama /modules.GetNumInstances:
+span:/modules.GetNumInstances latency:1s
Semua perbandingan string bersifat peka huruf besar/kecil.
Atribut boolean
Untuk menentukan nilai untuk 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 kutip:
environment:production
path:/index.html
error_code:200
Nilai yang menyertakan karakter lain, termasuk spasi kosong, harus diapit oleh karakter tanda kutip 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, escape karakter dengan garis miring terbalik:
my-label:"Notice: This value contains spaces, a colon, a \"quote\", and a backslash (\\)"
Sintaksis filter
Di halaman ini, NAME mengacu pada nama kolom, sedangkan VALUE mengacu pada nilai pasangan kunci-nilai. String _PREFIX dan _EXACT adalah indikasi visual apakah pengujian adalah pengujian awalan atau kecocokan yang tepat. Misalnya, root:[NAME_PREFIX] berarti
nama rentang root harus diawali dengan [NAME_PREFIX].
Bagian lain dari halaman ini berisi deskripsi untuk filter saat menggunakan Cloud Trace API.
Contoh filter permintaan
Berikut ini menjelaskan istilah filter:
root:[NAME_PREFIX]Nama rentang root trace harus diawali dengan [NAME_PREFIX]. Misalnya, filter berikut cocok dengan trace bernama
"/_ah/background", tetapi tidak cocok dengan trace bernama"/_ahx/background":root:/_ah/+root:[NAME]Nama rentang root trace harus [NAME], tepatnya. 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]Trace harus memiliki setidaknya satu rentang yang namanya diawali dengan [NAME_PREFIX]. Contoh:
span:/modules.+span:[NAME]Trace harus memiliki setidaknya satu rentang yang namanya adalah [NAME], tepatnya. Misalnya,
span:/modules.GetNumInstanceslatency:[DURATION]Trace harus memiliki latensi keseluruhan yang lebih besar atau sama dengan [DURATION]. Durasi dinyatakan sebagai bilangan bulat yang diikuti oleh penentu unit:
suntuk detik,msuntuk milidetik, ataunsuntuk nanodetik. Jika tidak ada penentu unit, unitnya adalah milidetik. Misalnya, empat durasi berikut sama:12s 12000ms 12000000ns 12000label:[LABEL_KEY]Trace harus berisi kunci label yang ditentukan, tepatnya. Nilai label (jika ada) tidak masalah. Misalnya,
label:/http/url[LABEL_KEY]:[VALUE_PREFIX]Trace harus berisi kunci label yang ditentukan, tepatnya, dan nilai label harus diawali dengan [VALUE_PREFIX]. Misalnya, istilah berikut cocok dengan trace yang versi App Engine-nya diawali dengan
"2017".g.co/gae/app/module_version:2017+[LABEL_KEY]:[VALUE_EXACT]Trace harus berisi kunci dan nilai label yang ditentukan, tepatnya. Misalnya,
+g.co/gae/app/module_version:201750925t173233.387410594824284458method:[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 root
Untuk membatasi istilah penelusuran hanya ke rentang root, tambahkan (^) sebelum istilah penelusuran dan setelah (+) opsional. Untuk kolom Filter di halaman Trace Explorer, jika Anda menambahkan anotasi +^, anotasi tersebut akan dikonversi menjadi ^+ saat Anda menekan Enter.
Berikut ini menunjukkan beberapa istilah penelusuran khusus rentang root dan kesetaraannya:
^label:[LABEL_KEY]- Ini adalah penelusuran rentang root untuk
label:[LABEL_KEY]. ^[LABEL_KEY]:[VALUE_PREFIX]- Ini adalah penelusuran rentang root untuk
[LABEL_KEY]:[VALUE_PREFIX]. +^[LABEL_KEY]:[VALUE]- Ini adalah penelusuran rentang root untuk
+[LABEL_KEY]:[VALUE]. ^method:[VALUE_PREFIX]- Ini adalah penelusuran rentang root untuk
method:[VALUE_PREFIX]. +^method:[VALUE]- Ini adalah penelusuran rentang root untuk
+method:[VALUE]. ^url:[VALUE_PREFIX]- Ini adalah penelusuran rentang root untuk
url:[VALUE_PREFIX]. +^url:[VALUE]- Ini adalah penelusuran rentang root untuk
+url:[VALUE]. ^span:[NAME_PREFIX]- Ini setara dengan
root:[NAME_PREFIX]. +^span:[NAME]- Ini setara dengan
+root:[NAME].
Dengan membuat kueri dengan istilah campuran, penelusuran dapat disesuaikan lebih lanjut. Misalnya,
+^url:/main /images method:200
cocok dengan trace saat label rentang root /http/url persisnya "/main", nama rentang root diawali dengan /images, dan rentang apa pun memiliki label /http/method dengan nilai 200.
Pemecahan masalah
Bagian ini berisi konten pemecahan masalah.
Performa lambat
Jika filter trace Anda rumit, filter tersebut akan memerlukan waktu lebih lama untuk dijalankan dan dapat mengalami error waktu tunggu. Untuk meningkatkan performa, sederhanakan filter.
Tidak ada hasil
Jika filter Anda tidak menampilkan trace apa pun, 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, filter akan ditafsirkan sebagailabel:method:GET, yang tidak cocok dengan trace apa 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 mengapa 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.