apmlog.get
Descrizione
integer/array apmlog.get(object parameters)
Il metodo consente di recuperare i record di log in base ai parametri specificati.
Questo metodo è disponibile per gli utenti di qualsiasi tipo. Le autorizzazioni per chiamare il metodo possono essere revocate nelle impostazioni del ruolo utente. Per ulteriori informazioni, vedere Ruoli utente.
Parametri
(object) Parametri che definiscono l'output desiderato.
Il metodo supporta i seguenti parametri.
| Parametro | Tipo | Descrizione |
|---|---|---|
| time_from | timestamp | Restituisce solo i record di log degli eventi verificatisi al momento specificato o successivamente. Comportamento del parametro: - obbligatorio |
| time_till | timestamp | Restituisce solo i record di log degli eventi verificatisi prima del momento specificato. Comportamento del parametro: - obbligatorio |
| traceids | string/array | Restituisce solo i record di log prodotti durante le tracce specificate. |
| spanids | string/array | Restituisce solo i record di log prodotti durante gli span specificati. |
| with_flags_on | integer | Restituisce solo i record di log che hanno impostati tutti i flag di traccia specificati. Per specificare più flag, utilizzare la somma dei relativi valori. |
| with_flags_off | integer | Restituisce solo i record di log che non hanno impostato nessuno dei flag di traccia specificati. Per specificare più flag, utilizzare la somma dei relativi valori. |
| resource_attributes | object/array | Restituisce solo i record di log con gli attributi della risorsa specificati. Formato: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].Un array vuoto restituisce tutti i record di log. Valori possibili per operator: 0 - (predefinito) Contiene; 1 - Uguale; 2 - Non contiene; 3 - Non uguale; 4 - Esiste; 5 - Non esiste. |
| resource_attributes_evaltype | integer | Metodo di valutazione per le condizioni in resource_attributes.Valori possibili: 0 - (predefinito) And/Or; 2 - Or. |
| scope_attributes | object/array | Restituisce solo i record di log con gli attributi dell'ambito specificati. Formato: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].Un array vuoto restituisce tutti i record di log. Valori possibili per operator: 0 - (predefinito) Contiene; 1 - Uguale; 2 - Non contiene; 3 - Non uguale; 4 - Esiste; 5 - Non esiste. |
| scope_attributes_evaltype | integer | Metodo di valutazione per le condizioni in scope_attributes.Valori possibili: 0 - (predefinito) And/Or; 2 - Or. |
| log_attributes | object/array | Restituisce solo i record di log con gli attributi di log specificati. Formato: [{"key": "<key>", "value": "<value>", "operator": "<operator>"}, ...].Un array vuoto restituisce tutti i record di log. Valori possibili per operator: 0 - (predefinito) Contiene; 1 - Uguale; 2 - Non contiene; 3 - Non uguale; 4 - Esiste; 5 - Non esiste. |
| log_attributes_evaltype | integer | Metodo di valutazione per le condizioni in log_attributes.Valori possibili: 0 - (predefinito) And/Or; 2 - Or. |
| filter | object | Restituisce solo i risultati che corrispondono esattamente al filtro specificato. Accetta un oggetto in cui le chiavi sono nomi di proprietà e i valori sono un singolo valore o un array di valori da confrontare. Proprietà supportate: traceid, spanid, trace_flags, severity_text, severity_number, service_name, resource_schema_url, scope_schema_url, scope_name, scope_version, event_name. |
| search | object | Restituisce i risultati che corrispondono al modello specificato (senza distinzione tra maiuscole e minuscole). Accetta un oggetto in cui le chiavi sono nomi di proprietà e i valori sono stringhe da cercare. Se non vengono specificate opzioni aggiuntive, viene eseguita una ricerca LIKE "%…%".Proprietà supportate: severity_text, service_name, body, resource_schema_url, scope_schema_url, scope_name, scope_version, event_name. |
| sortfield | string/array | Ordina il risultato in base alle proprietà specificate. Valori possibili: 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 | Numero di record da ignorare prima di restituire il risultato. |
| countOutput | boolean | Questi parametri sono descritti nel commento di riferimento. |
| excludeSearch | boolean | |
| limit | integer | |
| output | query | |
| searchByAny | boolean | |
| searchWildcardsEnabled | boolean | |
| sortorder | string/array | |
| startSearch | boolean |
Valori restituiti
(integer/array) Restituisce:
- un array di oggetti;
- il numero di oggetti recuperati, se è stato utilizzato il parametro
countOutput.
Esempi
Recupero dei log degli errori di una traccia
Recupera i record di log con gravità ERROR (numeri di gravità 17-20) associati alla traccia "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
}
Risposta:
{
"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
}
Ricerca dei messaggi di log
Recupera l'ora, il servizio e il messaggio degli ultimi 10 record di log il cui messaggio contiene "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
}
Risposta:
{
"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
}
Vedi anche
Origine
CApmLog::get() in ui/include/classes/api/services/CApmLog.php.