Bahasa kueri penelusuran adalah sintaksis yang Anda gunakan untuk melakukan penelusuran masalah di Issue Tracker Google. Anda dapat menggunakan bahasa dalam kueri penelusuran yang dimasukkan di kotak penelusuran. Anda juga dapat menggunakan search builder untuk memilih kriteria secara grafis, yang kemudian dikonversi menjadi bahasa kueri saat search builder ditutup.
Bahasa kueri memungkinkan Anda menelusuri berdasarkan kriteria berikut:
- Kata kunci
- Pasangan kolom:nilai
Penelusuran yang Anda lakukan dapat berisi beberapa kriteria, termasuk kombinasi kata kunci dan pasangan kolom:nilai. Sintaksis bahasa kueri memungkinkan Anda menentukan hubungan dan urutan kriteria yang dipertimbangkan menggunakan operator logis, tanda kurung, dan tanda petik.
Penelusuran kata kunci
Kata kunci adalah string teks yang dapat Anda gunakan untuk menelusuri di kolom tertentu dalam masalah. Kolom ini adalah:
- Judul
- Komentar
- Nama lampiran
- Kolom yang berisi pengguna (misalnya, Penerima atau CC)
- Kolom yang berisi nomor ID internal (misalnya, kolom yang menentukan komponen atau hotlist yang berisi masalah)
- Kolom yang berisi nomor versi
- Kolom kustom
Contoh kriteria penelusuran kata kunci adalah string configuration properties
.
Saat Anda memasukkan kriteria ini dalam penelusuran, Issue Tracker akan menelusuri masalah secara global
di semua komponen dan menampilkan masalah yang kolomnya berisi kedua kata kunci tersebut, seperti
yang diatur oleh izin kontrol akses Anda. Kata kunci dapat berada di
kolom yang berbeda atau kolom yang sama.
Kata kunci juga akan cocok dengan beberapa sinonim dasar, sehingga penelusuran property
mungkin
juga menemukan bug yang berisi kata properties
. Jika tidak, penelusuran
hanya akan mencocokkan token kata lengkap, bukan memperlakukan kueri sebagai
substring.
Sebagian besar karakter khusus dihapus dari kata kunci sebelum melakukan penelusuran.
Misalnya, kueri seperti my-query_text
akan dibagi menjadi token
my
dan query_text
serta menampilkan bug yang cocok dengan kedua token tersebut.
Issue Tracker memperlakukan karakter spasi yang memisahkan kriteria penelusuran sebagai
operator AND
implisit. Anda dapat menggunakan tanda petik ("
) untuk
menentukan bahwa string multi-kata akan dianggap sebagai satu kata kunci. Semua
penelusuran di Issue Tracker tidak peka huruf besar atau kecil, terlepas dari apakah Anda menggunakan tanda
kutip atau tidak.
Penelusuran pasangan kolom:nilai
Anda juga dapat menentukan kriteria penelusuran sebagai pasangan kolom:nilai. Sintaksis dasarnya adalah
[field]:[value]
. Untuk kolom teks, sintaksis ini cocok dengan masalah saat
kolom yang ditentukan berisi nilai. Untuk jenis kolom lainnya, kolom ini cocok dengan masalah yang nilai kolomnya setara.
Misalnya, penelusuran title:latency
cocok dengan masalah yang berisi kata latency
di kolom Judul. Penelusuran priority:p0
akan menemukan masalah dengan prioritas
p0
.
Semua kolom yang tidak dikenali akan ditafsirkan sebagai penelusuran kata kunci.
Perhatikan bahwa untuk kolom waktu dan jumlah, Anda dapat menggunakan simbol relasional lain selain karakter titik dua. Lihat Operator relasional.
Penelusuran nilai khusus menggunakan any dan none
Kolom opsional dapat dikueri dengan nilai khusus any
dan none
. any
cocok dengan nilai non-null apa pun. none
cocok dengan nilai null. Untuk mengetahui daftar semua
label kolom yang didukung dalam bahasa kueri penelusuran, lihat
Referensi Kueri Penelusuran.
Operator logika
Operator logika memungkinkan Anda menentukan lebih dari satu kriteria dan menunjukkan
hubungan di antara keduanya. Karakter spasi di luar tanda petik bertindak
sebagai operator AND
implisit. Issue Tracker mendukung operator logika eksplisit tambahan berikut:
Operator | Simbol alternatif | Deskripsi | Contoh |
---|---|---|---|
DAN | {whitespace} | Cocok jika masalah berisi kedua kriteria | star:true AND componentid:46046
|
ATAU | | | Cocok jika masalah berisi salah satu kriteria | type:(Bug|feature_request)
|
NOT | - | Cocok jika masalah tidak berisi kriteria | -assignee:jim
|
"..." | Cocok jika masalah berisi frasa yang dikutip (kata-kata dalam kutipan muncul dalam urutan yang sama) | comment:"We have a problem"
|
|
( ) | Mengelompokkan nilai atau kriteria penelusuran bersama-sama | status:open AND
(priority:(p0|p1) OR
severity:(s0|s1))
|
Perhatikan hal berikut:
Anda harus menggunakan huruf besar semua untuk
AND
,OR
, danNOT
.Operator
NOT
memiliki arti yang sama, baik sebelum nama kolom maupun nilai kolom. Artinya,-assignee:jim
danassignee:-jim
setara.Gunakan tanda kurung untuk mengelompokkan istilah dalam kueri penelusuran dengan jelas. Secara default, Issue Tracker mengaitkan
NOT
dengan istilah yang langsung mengikutinya saja dan mengelompokkanOR
dengan dua istilah yang mengapitnya. Misalnya, kueri penelusurantitle:(a OR b NOT c AND d)
setara dengantitle:((a OR b) AND (NOT c) AND d)
.
Tanda Hubung
Karakter tanda hubung (-
) memiliki arti yang berbeda berdasarkan konteks dalam kueri
penelusuran:
Issue Tracker memperlakukan tanda hubung sebelum kata dalam penelusuran sebagai operator
NOT
. Misalnya, kriteria penelusuran-assignee:none
atauassignee:-none
menampilkan semua masalah yang memiliki penerima tugas.Issue Tracker memperlakukan string yang dihubungkan dengan karakter tanda hubung sebagai diapit tanda kutip. Misalnya, kriteria penelusuran
state-of-the-art
setara dengan"state of the art"
.Issue Tracker memperlakukan kata yang dihubungkan dengan tanda hubung di kolom masalah sebagai kata independen yang dipisahkan oleh spasi kosong. Artinya, jika masalah memiliki kata
state-of-the-art
dalam judulnya dan Anda menjalankan kueri penelusurantitle:(of art state the)
atautitle:("state of the art")
, masalah tersebut akan ditampilkan sebagai bagian dari hasil penelusuran.
Operator relasional
Sintaksis dasar untuk kriteria penelusuran kolom:nilai adalah [field]:[value]
, dengan
karakter titik dua (:
) menentukan bahwa kolom yang diberikan harus sama dengan atau
berisi nilai yang ditentukan agar masalah ditampilkan dalam hasil
penelusuran.
Kolom yang berisi nilai waktu (created
, modified
, resolved
, verified
, dan kolom kustom tertentu) atau nilai jumlah (duplicatecount
, votecount
, commentcount
, dan cccount
) mendukung operator relasional tambahan berikut:
Simbol | Deskripsi |
---|---|
< | Mencocokkan masalah jika nilainya kurang dari atau sebelum nilai penelusuran Anda. |
<= | Mencocokkan masalah jika nilainya kurang dari, sebelum, atau sama dengan nilai penelusuran Anda. |
> | Mencocokkan masalah jika nilainya lebih besar dari atau setelah nilai penelusuran Anda. |
>= | Mencocokkan masalah jika nilainya lebih besar dari, setelah, atau sama dengan nilai penelusuran Anda. |
Penelusuran waktu
Bahasa kueri penelusuran menyediakan sintaksis khusus untuk mencocokkan kolom yang berisi nilai waktu. Hal ini memungkinkan Issue Tracker menelusuri rentang waktu atau waktu relatif sesuai kebutuhan.
Format waktu absolut
Format untuk menentukan waktu adalah:
[yyyy]-[MM]-[dd]T[HH]:[mm]:[ss]
.
Dalam format ini, [yyyy]
adalah tahun dengan 4 digit, [MM]
adalah bulan dengan 2 digit,
[dd]
adalah hari dengan 2 digit, [HH]
adalah jam dengan 2 digit dari jam 24 jam, [mm]
adalah menit, dan [ss]
adalah detik. Semua waktu dalam penelusuran ditafsirkan
sebagai UTC, meskipun Anda memilih zona waktu yang berbeda di
setelan tanggal dan waktu.
Anda dapat memberikan tingkat kekhususan saat menelusuri masalah yang dibuat pada,
sebelum, atau setelah waktu tertentu. Misalnya, Anda dapat menentukan created:2014-06
untuk menemukan masalah yang dibuat kapan saja pada Juni 2014. Untuk lebih spesifik,
Anda dapat menelusuri created:2014-06-03T04
untuk menemukan masalah yang dibuat pada 3 Juni
2014 pada jam ke-4 (antara pukul 04.00 dan 05.00, UTC).
Rentang waktu
Anda dapat menggunakan dua karakter titik (..
) untuk menentukan rentang waktu dalam kriteria penelusuran kolom:nilai. Sintaksisnya adalah [field]:[start time]..[end time]
. Waktu mulai dan
akhir dapat memiliki tingkat kekhususan yang Anda perlukan. Misalnya,
verified:2013..2015
menampilkan semua masalah yang diverifikasi pada tahun 2013, 2014, atau 2015.
Format waktu relatif
Anda juga dapat menentukan waktu dalam hitungan hari sebelum hari ini. Untuk melakukannya, gunakan format [days]d
, dengan [days]
adalah jumlah hari sebelumnya yang ingin Anda sertakan dalam hasil penelusuran. Misalnya, Anda dapat menggunakan modified:5d
untuk menemukan masalah yang diubah dalam lima hari terakhir.
Saat menggunakan format waktu relatif, operator harus berupa karakter titik dua
(:
) seperti created:5d
. Jika ingin menemukan masalah yang tidak termasuk dalam
rentang, Anda dapat menggunakan operator NOT
atau -
.
Misalnya, -verified:10d
menampilkan masalah yang belum diverifikasi dalam
10 hari terakhir. Jika ingin menemukan masalah yang telah diverifikasi, tetapi tidak dalam
10 hari terakhir, Anda dapat menggunakan (-verified:10d) AND status:verified
.
Penelusuran "Hari ini" dengan aritmetika hari
Anda dapat menggunakan token today
dalam penelusuran waktu sebagai pengganti tanggal
saat ini. Class ini mendukung penggunaan aritmetika hari seperti today+10
dan today-2
. Token
today
juga dapat digunakan dengan rentang waktu seperti today-2..today+3
.
Menggunakan token today
di penelusuran tersimpan membantu membuat kueri dapat digunakan kembali.
Contoh:
created:today
modified<=today-10
nearestslo:today+10
resolved:2024-02-29..today+2
customfield1002:today..today+5
Catatan: Seperti yang disebutkan dalam format waktu absolut, penelusuran waktu di Issue Tracker menggunakan UTC. Hal yang sama berlaku untuk penelusuran yang menggunakan
today
.