Pelajari sintaksis, penggunaan, dan tabel kebenaran untuk operator logika AND, OR, dan NOT di Log Service.
Log Service mendukung operator logika berikut.
-
Dalam pernyataan kueri dan analisis, string harus diapit tanda petik tunggal ('). Karakter tanpa tanda kutip atau karakter dalam tanda petik ganda (") merepresentasikan nama field atau kolom. Misalnya, 'status' adalah string status, sedangkan status atau "status" adalah field status.
-
Urutan prioritas dari tertinggi ke terendah: NOT, AND, OR. Gunakan tanda kurung () untuk mengganti urutan tersebut.
-
Operator logika hanya berlaku untuk ekspresi Boolean (true, false, atau null).
|
Operator |
Sintaksis |
Deskripsi |
Dukungan SQL |
Dukungan SPL |
|
x AND y |
Mengembalikan true jika kedua ekspresi x dan y bernilai true. |
√ |
√ |
|
|
x OR y |
Mengembalikan true jika salah satu dari x atau y bernilai true. |
√ |
√ |
|
|
NOT x |
Mengembalikan true jika x bernilai false. |
√ |
√ |
Operator AND
Mengembalikan true jika kedua ekspresi x dan y bernilai true.
Sintaksis
x AND y
Parameter
|
Parameter |
Deskripsi |
|
x |
Ekspresi Boolean. |
|
y |
Ekspresi Boolean. |
Tipe nilai kembalian
boolean
Contoh
SQL
Mengembalikan true jika status bernilai 200 dan request_method bernilai GET.
-
Pernyataan kueri dan analisis
*|SELECT status=200 AND request_method='GET' -
Hasil muncul di kolom
_col0sebagaitrueataufalse, menunjukkan apakah setiap log memenuhi kedua kondisistatus=200danrequest_method='GET'.
SPL
Membuat field a yang bernilai true ketika status adalah 200 dan request_method adalah 'GET'.
-
Pernyataan SPL
*|extend a = status=200 AND request_method='GET'
-
Hasil SPL
a: true
Operator OR
Mengembalikan true jika salah satu dari x atau y bernilai true.
Sintaksis
x OR y
Parameter
|
Parameter |
Deskripsi |
|
x |
Ekspresi Boolean. |
|
y |
Ekspresi Boolean. |
Tipe nilai kembalian
boolean
Contoh
SQL
Menemukan log yang request_uri-nya diakhiri dengan 'file-8' atau 'file-6'.
-
Pernyataan kueri dan analisis
*|SELECT * WHERE request_uri LIKE '%file-8' OR request_uri LIKE '%file-6' -
Mengembalikan dua catatan yang nilai
request_uri-nya adalah/request/path-2/file-6dan/request/path-0/file-6. Metode request-nya adalah DELETE dan PUT, dan kode status keduanya adalah 200.
SPL
Menemukan log yang request_uri-nya diakhiri dengan 'file-8' atau 'file-6'.
-
Pernyataan SPL
*|WHERE request_uri LIKE '%file-8' OR request_uri LIKE '%file-6'
-
Mengembalikan entri log yang sesuai dengan filter. Sebagai contoh, log dengan nilai
request_uri/request/path-2/file-6memenuhi kondisi akhiran 'file-6'.
Operator NOT
Mengembalikan true jika x bernilai false.
Sintaksis
NOT x
Parameter
|
Parameter |
Deskripsi |
|
x |
Ekspresi Boolean. |
Tipe nilai kembalian
boolean
Contoh
SQL
Mengambil durasi request untuk request dengan kode status selain 200.
-
Pernyataan kueri dan analisis
*|SELECT request_time WHERE NOT status=200 -
Mengembalikan nilai
request_timeuntuk log yang sesuai. Contoh hasil: 53,0; 24,0; 56,0; dan 32,0.
SPL
Memfilter entri log dengan kode status selain 200.
-
Pernyataan SPL
*|WHERE NOT status=200
-
Mengembalikan entri log dengan kode status selain 200. Sebagai contoh, log dengan
status=500danrequest_uri=/request/path-2/file-6.
Tabel kebenaran
Hasil ketika x dan y bernilai true, false, atau null:
|
x |
y |
x AND y |
x OR y |
NOT x |
|
true |
true |
true |
true |
false |
|
true |
false |
false |
true |
false |
|
true |
null |
null |
true |
false |
|
false |
true |
false |
true |
true |
|
false |
false |
false |
false |
true |
|
false |
null |
false |
null |
true |
|
null |
true |
null |
true |
null |
|
null |
false |
false |
null |
null |
|
null |
null |
null |
null |
null |