Conheça a sintaxe, o uso e a tabela verdade dos operadores lógicos AND, OR e NOT no Log Service.
O Log Service oferece suporte aos seguintes operadores lógicos.
Em instruções de consulta e análise, as strings devem estar entre aspas simples ('). Caracteres sem aspas ou entre aspas duplas (") representam nomes de campos ou colunas. Por exemplo, 'status' é a string status, enquanto status ou "status" refere-se ao campo status.
Precedência, da maior para a menor: NOT, AND, OR. Use parênteses () para substituir essa ordem.
Os operadores lógicos aplicam-se apenas a expressões booleanas (true, false ou null).
|
Operador |
Sintaxe |
Descrição |
Suporte a SQL |
Suporte a SPL |
|
x AND y |
Retorna true se x e y forem avaliados como true. |
√ |
√ |
|
|
x OR y |
Retorna true se x ou y for avaliado como true. |
√ |
√ |
|
|
NOT x |
Retorna true se x for avaliado como false. |
√ |
√ |
Operador AND
Retorna true se x e y forem avaliados como true.
Syntax
x AND y
Parameters
|
Parâmetro |
Descrição |
|
x |
Uma expressão booleana. |
|
y |
Uma expressão booleana. |
Return value type
boolean
Examples
SQL
Retorna true se status for 200 e request_method for GET.
-
Instrução de consulta e análise
*|SELECT status=200 AND request_method='GET' Os resultados aparecem na coluna
_col0comotrueoufalsee indicam se cada log atende simultaneamente às condiçõesstatus=200erequest_method='GET'.
SPL
Cria um campo a com valor true quando status é 200 e request_method é 'GET'.
Instrução SPL
*|extend a = status=200 AND request_method='GET'
-
Resultados da SPL
a: true
Operador OR
Retorna true se x ou y for avaliado como true.
Syntax
x OR y
Parameters
|
Parâmetro |
Descrição |
|
x |
Uma expressão booleana. |
|
y |
Uma expressão booleana. |
Return value type
boolean
Examples
SQL
Localiza logs em que request_uri termina com 'file-8' ou 'file-6'.
-
Instrução de consulta e análise
*|SELECT * WHERE request_uri LIKE '%file-8' OR request_uri LIKE '%file-6' Retorna dois registros cujos valores de
request_urisão/request/path-2/file-6e/request/path-0/file-6. Os métodos de requisição são DELETE e PUT, e ambos têm código de status 200.
SPL
Busca entradas de log nas quais request_uri termina com 'file-8' ou 'file-6'.
Instrução SPL
*|WHERE request_uri LIKE '%file-8' OR request_uri LIKE '%file-6'
Retorna as entradas de log correspondentes ao filtro. Por exemplo, um log com valor
request_uriigual a/request/path-2/file-6atende à condição de sufixo 'file-6'.
Operador NOT
Retorna true se x for avaliado como false.
Syntax
NOT x
Parameters
|
Parâmetro |
Descrição |
|
x |
Uma expressão booleana. |
Return value type
boolean
Examples
SQL
Obtém a duração da requisição para solicitações com código de status diferente de 200.
-
Instrução de consulta e análise
*|SELECT request_time WHERE NOT status=200 Retorna os valores de
request_timepara os logs correspondentes. Exemplo de resultados: 53.0, 24.0, 56.0 e 32.0.
SPL
Filtra entradas de log com código de status diferente de 200.
Instrução SPL
*|WHERE NOT status=200
Retorna entradas de log cujo código de status seja diferente de 200. Por exemplo, um log com
status=500erequest_uri=/request/path-2/file-6.
Tabela verdade
Resultados quando x e y são avaliados como true, false ou 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 |