apmlog.get
Descrição
integer/array apmlog.get(object parameters)
O método permite recuperar registros de log de acordo com os parâmetros fornecidos.
Este método está disponível para usuários de qualquer tipo. As permissões para chamar o método podem ser revogadas nas configurações da função de usuário. Consulte Funções de usuário para obter mais informações.
Parâmetros
(object) Parâmetros que definem a saída desejada.
O método aceita os seguintes parâmetros.
| Parameter | Type | Description |
|---|---|---|
| time_from | timestamp | Retorna somente os registros de log de eventos que ocorreram no horário especificado ou posteriormente. Comportamento do parâmetro: - obrigatório |
| time_till | timestamp | Retorna somente os registros de log de eventos que ocorreram antes do horário especificado. Comportamento do parâmetro: - obrigatório |
| traceids | string/array | Retorna somente os registros de log produzidos durante os traces especificados. |
| spanids | string/array | Retorna somente os registros de log produzidos durante os spans especificados. |
| with_flags_on | integer | Retorna somente os registros de log que têm todos os trace flags especificados definidos. Para especificar vários flags, use a soma de seus valores. |
| with_flags_off | integer | Retorna somente os registros de log que não têm nenhum dos trace flags especificados definido. Para especificar vários flags, use a soma de seus valores. |
| resource_attributes | object/array | Retorna somente os registros de log com os atributos de recurso especificados. Formato: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].Uma matriz vazia retorna todos os registros de log. Valores possíveis de operator: 0 - (padrão) Contém; 1 - É igual a; 2 - Não contém; 3 - Não é igual a; 4 - Existe; 5 - Não existe. |
| resource_attributes_evaltype | integer | Método de avaliação das condições em resource_attributes.Valores possíveis: 0 - (padrão) E/Ou; 2 - Ou. |
| scope_attributes | object/array | Retorna somente os registros de log com os atributos de escopo especificados. Formato: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].Uma matriz vazia retorna todos os registros de log. Valores possíveis de operator: 0 - (padrão) Contém; 1 - É igual a; 2 - Não contém; 3 - Não é igual a; 4 - Existe; 5 - Não existe. |
| scope_attributes_evaltype | integer | Método de avaliação das condições em scope_attributes.Valores possíveis: 0 - (padrão) E/Ou; 2 - Ou. |
| log_attributes | object/array | Retorna somente os registros de log com os atributos de log especificados. Formato: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].Uma matriz vazia retorna todos os registros de log. Valores possíveis de operator: 0 - (padrão) Contém; 1 - É igual a; 2 - Não contém; 3 - Não é igual a; 4 - Existe; 5 - Não existe. |
| log_attributes_evaltype | integer | Método de avaliação das condições em log_attributes.Valores possíveis: 0 - (padrão) E/Ou; 2 - Ou. |
| filter | object | Retorna somente os resultados que correspondem exatamente ao filtro especificado. Aceita um objeto cujas chaves são nomes de propriedades e cujos valores são um único valor ou uma matriz de valores a serem comparados. Propriedades compatíveis: traceid, spanid, trace_flags, severity_text, severity_number, service_name, resource_schema_url, scope_schema_url, scope_name, scope_version, event_name. |
| search | object | Retorna os resultados que correspondem ao padrão especificado (sem distinção entre maiúsculas e minúsculas). Aceita um objeto cujas chaves são nomes de propriedades e cujos valores são strings a serem pesquisadas. Se nenhuma opção adicional for especificada, será realizada uma pesquisa LIKE "%…%".Propriedades compatíveis: severity_text, service_name, body, resource_schema_url, scope_schema_url, scope_name, scope_version, event_name. |
| sortfield | string/array | Ordena o resultado pelas propriedades especificadas. Valores possíveis: timestamp, traceid, spanid, trace_flags, severity_text, severity_number, service_name, resource_schema_url, scope_schema_url, scope_name, scope_version, event_name. |
| offset | integer | Número de registros a ignorar antes de retornar o resultado. |
| countOutput | boolean | Esses parâmetros são descritos no comentário de referência. |
| excludeSearch | boolean | |
| limit | integer | |
| output | query | |
| searchByAny | boolean | |
| searchWildcardsEnabled | boolean | |
| sortorder | string/array | |
| startSearch | boolean |
Valores de retorno
(integer/array) Retorna:
- um array de objetos;
- a quantidade de objetos recuperados, se o parâmetro
countOutputtiver sido usado.
Exemplos
Recuperando logs de erro de um trace
Recupere os registros de log com a severidade ERROR (números de severidade 17-20) associados ao trace "8a4f1c7e2b9d4e6fa0c3b5d7e9f1a2c4".
{
"jsonrpc": "2.0",
"method": "apmlog.get",
"params": {
"output": "extend",
"time_from": 1790848800,
"time_till": 1790852400,
"traceids": "8a4f1c7e2b9d4e6fa0c3b5d7e9f1a2c4",
"filter": {
"severity_number": [17, 18, 19, 20]
},
"sortfield": "timestamp",
"sortorder": "ASC"
},
"id": 1
}
Resposta:
{
"jsonrpc": "2.0",
"result": [
{
"timestamp": "1790849305091452376",
"traceid": "8a4f1c7e2b9d4e6fa0c3b5d7e9f1a2c4",
"spanid": "5d2e8f1a9c3b7046",
"trace_flags": "1",
"severity_text": "ERROR",
"severity_number": "17",
"service_name": "zabbix-frontend",
"body": "mysqli_query(): (HY000/1205): Lock wait timeout exceeded; try restarting transaction",
"resource_schema_url": "https://opentelemetry.io/schemas/1.26.0",
"resource_attributes": {
"service.name": "zabbix-frontend",
"host.name": "6583ceeb5f94",
"host.arch": "x86_64",
"os.type": "linux"
},
"scope_schema_url": "",
"scope_name": "zabbix-frontend",
"scope_version": "",
"scope_attributes": {},
"log_attributes": {
"log.file.path": "/var/log/zabbix/zabbix_frontend.log",
"code.filepath": "/usr/share/zabbix/include/db.inc.php"
},
"event_name": ""
}
],
"id": 1
}
Pesquisando mensagens de log
Recupere o horário, o serviço e a mensagem dos 10 registros de log mais recentes cuja mensagem contenha "timeout".
{
"jsonrpc": "2.0",
"method": "apmlog.get",
"params": {
"output": ["timestamp", "service_name", "severity_text", "body"],
"time_from": 1790848800,
"time_till": 1790852400,
"search": {
"body": "timeout"
},
"sortfield": "timestamp",
"sortorder": "DESC",
"limit": 10
},
"id": 1
}
Resposta:
{
"jsonrpc": "2.0",
"result": [
{
"timestamp": "1790849305091452376",
"service_name": "zabbix-frontend",
"severity_text": "ERROR",
"body": "mysqli_query(): (HY000/1205): Lock wait timeout exceeded; try restarting transaction"
},
{
"timestamp": "1790848961730284115",
"service_name": "zabbix-frontend",
"severity_text": "ERROR",
"body": "mysqli_query(): (HY000/1205): Lock wait timeout exceeded; try restarting transaction"
}
],
"id": 1
}
Veja também
Origem
CApmLog::get() em ui/include/classes/api/services/CApmLog.php.