apmlog.get
Descripción
integer/array apmlog.get(object parameters)
El método permite recuperar registros de log según los parámetros indicados.
Este método está disponible para usuarios de cualquier tipo. Los permisos para llamar al método pueden revocarse en la configuración de roles de usuario. Consulte Roles de usuario para obtener más información.
Parámetros
(object) Parámetros que definen el resultado deseado.
El método admite los siguientes parámetros.
| Parámetro | Tipo | Descripción |
|---|---|---|
| time_from | timestamp | Devuelve únicamente los registros de log de eventos que ocurrieron en el momento indicado o después. Comportamiento del parámetro: - obligatorio |
| time_till | timestamp | Devuelve únicamente los registros de log de eventos que ocurrieron antes del momento indicado. Comportamiento del parámetro: - obligatorio |
| traceids | string/array | Devuelve únicamente los registros de log generados durante los traces indicados. |
| spanids | string/array | Devuelve únicamente los registros de log generados durante los spans indicados. |
| with_flags_on | integer | Devuelve únicamente los registros de log que tienen establecidos todos los trace flags indicados. Para especificar varios flags, utilice la suma de sus valores. |
| with_flags_off | integer | Devuelve únicamente los registros de log que no tienen establecido ninguno de los trace flags indicados. Para especificar varios flags, utilice la suma de sus valores. |
| resource_attributes | object/array | Devuelve únicamente los registros de log con los atributos de recurso indicados. Formato: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].Un array vacío devuelve todos los registros de log. Valores posibles de operator: 0 - (predeterminado) Contiene; 1 - Es igual a; 2 - No contiene; 3 - No es igual a; 4 - Existe; 5 - No existe. |
| resource_attributes_evaltype | integer | Método de evaluación de las condiciones de resource_attributes.Valores posibles: 0 - (predeterminado) And/Or; 2 - Or. |
| scope_attributes | object/array | Devuelve únicamente los registros de log con los atributos de scope indicados. Formato: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].Un array vacío devuelve todos los registros de log. Valores posibles de operator: 0 - (predeterminado) Contiene; 1 - Es igual a; 2 - No contiene; 3 - No es igual a; 4 - Existe; 5 - No existe. |
| scope_attributes_evaltype | integer | Método de evaluación de las condiciones de scope_attributes.Valores posibles: 0 - (predeterminado) And/Or; 2 - Or. |
| log_attributes | object/array | Devuelve únicamente los registros de log con los atributos de log indicados. Formato: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].Un array vacío devuelve todos los registros de log. Valores posibles de operator: 0 - (predeterminado) Contiene; 1 - Es igual a; 2 - No contiene; 3 - No es igual a; 4 - Existe; 5 - No existe. |
| log_attributes_evaltype | integer | Método de evaluación de las condiciones de log_attributes.Valores posibles: 0 - (predeterminado) And/Or; 2 - Or. |
| filter | object | Devuelve únicamente los resultados que coinciden exactamente con el filtro indicado. Acepta un objeto cuyas claves son nombres de propiedades y cuyos valores son un único valor o un array de valores con los que se debe comparar. Propiedades compatibles: traceid, spanid, trace_flags, severity_text, severity_number, service_name, resource_schema_url, scope_schema_url, scope_name, scope_version, event_name. |
| search | object | Devuelve los resultados que coinciden con el patrón indicado (sin distinguir entre mayúsculas y minúsculas). Acepta un objeto cuyas claves son nombres de propiedades y cuyos valores son cadenas que se deben buscar. Si no se proporcionan opciones adicionales, se realizará una búsqueda LIKE "%…%".Propiedades compatibles: severity_text, service_name, body, resource_schema_url, scope_schema_url, scope_name, scope_version, event_name. |
| sortfield | string/array | Ordena el resultado según las propiedades indicadas. Valores posibles: 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 que se deben omitir antes de devolver el resultado. |
| countOutput | boolean | Estos parámetros se describen en la referencia. |
| excludeSearch | boolean | |
| limit | integer | |
| output | query | |
| searchByAny | boolean | |
| searchWildcardsEnabled | boolean | |
| sortorder | string/array | |
| startSearch | boolean |
Valores devueltos
(integer/array) Devuelve uno de los siguientes valores:
- un array de objetos;
- el número de objetos recuperados, si se ha utilizado el parámetro
countOutput.
Ejemplos
Recuperación de registros de error de un trace
Recupere los registros con la gravedad ERROR (números de gravedad 17-20) asociados al 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
}
Respuesta:
{
"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
}
Búsqueda de mensajes de registro
Recupere la hora, el servicio y el mensaje de los 10 registros de log más recientes cuyo mensaje contenga "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
}
Respuesta:
{
"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
}
Véase también
Fuente
CApmLog::get() en ui/include/classes/api/services/CApmLog.php.