event.get

Descrizione

integer/array event.get(object parameters)

Questo metodo consente di recuperare gli eventi in base ai parametri specificati.

Questo metodo può restituire eventi di un'entità eliminata se tali eventi non sono ancora stati rimossi dall'housekeeper.

Questo metodo è disponibile per 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.

Parameter Type Description
eventids ID/array Restituisce solo gli eventi con gli ID specificati.
groupids ID/array Restituisce solo gli eventi creati da oggetti che appartengono ai gruppi di host specificati.
hostids ID/array Restituisce solo gli eventi creati da oggetti che appartengono agli host specificati.
objectids ID/array Restituisce solo gli eventi creati dagli oggetti specificati.
source integer Restituisce solo gli eventi del tipo specificato.

Fare riferimento alla pagina dell'oggetto event per un elenco dei tipi di evento supportati.

Predefinito: 0 - eventi trigger.
object integer Restituisce solo gli eventi creati da oggetti del tipo specificato.

Fare riferimento alla pagina dell'oggetto event per un elenco dei tipi di oggetto supportati.

Predefinito: 0 - trigger.
acknowledged boolean Se impostato su true, restituisce solo gli eventi confermati.
action integer Restituisce solo gli eventi per i quali sono state eseguite le azioni di aggiornamento evento specificate. Per più azioni, utilizzare la somma di qualsiasi valore bitmap accettabile come maschera di bit (ad esempio, 34 per confermare e sopprimere l'evento).
action_userids ID/array Restituisce solo gli eventi con gli ID specificati degli utenti che hanno eseguito le azioni di aggiornamento evento.
suppressed boolean Se impostato su true, restituisce solo gli eventi soppressi.
symptom boolean Se impostato su true, restituisce solo gli eventi sintomo.
severities integer/array Restituisce solo gli eventi con le severità evento specificate. Si applica solo se object è trigger.
trigger_severities integer/array Restituisce solo gli eventi con le severità trigger specificate. Si applica solo se object è trigger.
evaltype integer Metodo di valutazione dei tag.

Valori possibili:
0 - (predefinito) And/Or;
2 - Or.
tags array Restituisce solo gli eventi con i tag specificati.
Formato: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Un array vuoto restituisce tutti gli eventi.

Valori operator possibili:
0 - (predefinito) Contains;
1 - Equals;
2 - Does not contain;
3 - Does not equal;
4 - Exists;
5 - Does not exist.
eventid_from string Restituisce solo gli eventi con ID maggiori o uguali all'ID specificato.
eventid_till string Restituisce solo gli eventi con ID minori o uguali all'ID specificato.
time_from timestamp Restituisce solo gli eventi creati al momento specificato o successivamente.
time_till timestamp Restituisce solo gli eventi creati al momento specificato o precedentemente.
problem_time_from timestamp Restituisce solo gli eventi che erano nello stato di problema a partire da problem_time_from, indipendentemente dal loro stato corrente. Si applica solo quando source è un evento trigger e object è un trigger. Questo parametro è obbligatorio se viene specificato problem_time_till.
problem_time_till timestamp Restituisce solo gli eventi che erano nello stato di problema fino a problem_time_till, indipendentemente dal loro stato corrente. Si applica solo quando source è un evento trigger e object è un trigger. Questo parametro è obbligatorio se viene specificato problem_time_from.
value integer/array Restituisce solo gli eventi con i valori specificati.
selectAcknowledges query Restituisce una proprietà acknowledges con gli aggiornamenti dell'evento. Gli aggiornamenti dell'evento sono ordinati in ordine cronologico inverso.

L'oggetto aggiornamento evento ha le seguenti proprietà:
acknowledgeid - (ID) ID della conferma;
userid - (ID) ID dell'utente che ha aggiornato l'evento;
clock - (timestamp) ora in cui l'evento è stato aggiornato;
message - (string) testo del messaggio;
action - (integer) azione di aggiornamento eseguita, vedere event.acknowledge;
old_severity - (integer) severità dell'evento prima di questa azione di aggiornamento;
new_severity - (integer) severità dell'evento dopo questa azione di aggiornamento;
suppress_until - (timestamp) ora fino alla quale l'evento sarà soppresso;
taskid - (ID) ID del task se l'evento corrente è soggetto a un cambio di rango;
username - (string) nome utente dell'utente che ha aggiornato l'evento;
name - (string) nome dell'utente che ha aggiornato l'evento;
surname - (string) cognome dell'utente che ha aggiornato l'evento.

Supporta count.
selectAlerts query Restituisce una proprietà alerts con gli avvisi generati dall'evento. Gli avvisi sono ordinati in ordine cronologico inverso.
selectHosts query Restituisce una proprietà hosts con gli host che contengono l'oggetto che ha creato l'evento. Supportato solo per gli eventi generati da trigger, item o regole LLD.
selectRelatedObject query Restituisce una proprietà relatedObject con l'oggetto che ha creato l'evento. Il tipo di oggetto restituito dipende dal tipo di evento.
selectSuppressionData query Restituisce una proprietà suppression_data con l'elenco delle maintenance attive e delle soppressioni manuali:
maintenanceid - (ID) ID della maintenance;
userid - (ID) ID dell'utente che ha soppresso l'evento;
suppress_until - (integer) ora fino alla quale l'evento è soppresso.
selectTags query Restituisce una proprietà tags con i tag dell'evento.
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 oppure un array di valori da confrontare.

Non supporta proprietà del tipo di dati text.
sortfield string/array Ordina il risultato in base alle proprietà specificate.

Valori possibili: eventid, objectid, clock.

Valori possibili se utilizzato insieme a groupBy: objectid.

Valori possibili se utilizzato insieme a countOutput e groupBy: objectid, rowscount.
groupBy string/array Raggruppa i risultati in base alle proprietà specificate. Le proprietà specificate saranno restituite nei risultati.

Valori possibili: objectid.
countOutput boolean Questi parametri sono descritti nel commento di riferimento.
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valori restituiti

(integer/array) Restituisce uno dei seguenti valori:

  • un array di oggetti
  • il numero di oggetti recuperati, se è stato utilizzato il parametro countOutput, ma non è stato utilizzato il parametro groupBy
  • un array di oggetti con i risultati dell'aggregazione, se è stato utilizzato il parametro groupBy

Esempi

Recupero degli eventi del trigger

Recupera gli eventi più recenti dal trigger "22395".

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "output": "extend",
        "selectAcknowledges": "extend",
        "selectSuppressionData": "extend",
        "selectTags": "extend",
        "objectids": "22395",
        "sortfield": ["clock", "eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Risposta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "20",
            "source": "0",
            "object": "0",
            "objectid": "22395",
            "clock": "1728658089",
            "value": "0",
            "acknowledged": "0",
            "ns": "461809482",
            "name": "La media di carico è troppo alta (carico per CPU superiore a 1.5 per 5m)",
            "severity": "0",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "acknowledges": [],
            "opdata": "Medie di carico(1m 5m 15m): (1.6328 3.0522 2.2515), n. di CPU: 2",
            "suppression_data": [],
            "suppressed": "0",
            "tags": [
                {
                    "tag": "scope",
                    "value": "capacity"
                },
                {
                    "tag": "scope",
                    "value": "performance"
                },
                {
                    "tag": "component",
                    "value": "cpu"
                },
                {
                    "tag": "class",
                    "value": "os"
                },
                {
                    "tag": "target",
                    "value": "linux"
                }
            ],
            "urls": []
        },
        {
            "eventid": "4",
            "source": "0",
            "object": "0",
            "objectid": "22395",
            "clock": "1728657737",
            "value": "1",
            "acknowledged": "1",
            "ns": "460759366",
            "name": "La media di carico è troppo alta (carico per CPU superiore a 1.5 per 5m)",
            "severity": "3",
            "r_eventid": "20",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "acknowledges": [
                {
                    "acknowledgeid": "1",
                    "userid": "1",
                    "clock": "1728657938",
                    "message": "Ambiente di test. Ignorare questo avviso.",
                    "action": "38",
                    "old_severity": "0",
                    "new_severity": "0",
                    "suppress_until": "1728744338",
                    "taskid": "0",
                    "username": "Admin",
                    "name": "Zabbix",
                    "surname": "Administrator"
                }
            ],
            "opdata": "Medie di carico(1m 5m 15m): (1.6328 3.0522 2.2515), n. di CPU: 2",
            "suppression_data": [
                {
                    "maintenanceid": "0",
                    "suppress_until": "1728744338",
                    "userid": "1"
                }
            ],
            "suppressed": "1",
            "tags": [
                {
                    "tag": "scope",
                    "value": "capacity"
                },
                {
                    "tag": "scope",
                    "value": "performance"
                },
                {
                    "tag": "component",
                    "value": "cpu"
                },
                {
                    "tag": "class",
                    "value": "os"
                },
                {
                    "tag": "target",
                    "value": "linux"
                }
            ],
            "urls": []
        }
    ],
    "id": 1
}

Recupero degli eventi per intervallo di tempo

Recupera tutti gli eventi creati tra il 17 e il 18 ottobre 2012, in ordine cronologico inverso.

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "output": "extend",
        "time_from": "1350432000",
        "time_till": "1350518400",
        "sortfield": ["clock", "eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Risposta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "20617",
            "source": "0",
            "object": "0",
            "objectid": "14282",
            "clock": "1350477816",
            "value": "1",
            "acknowledged": "0",
            "ns": "0",
            "name": "Less than 25% free in the history cache",
            "severity": "3",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "opdata": "",
            "suppressed": "0",
            "urls": []
        },
        {
            "eventid": "20616",
            "source": "0",
            "object": "0",
            "objectid": "14281",
            "clock": "1350477814",
            "value": "0",
            "acknowledged": "0",
            "ns": "0",
            "name": "Zabbix trapper processes more than 75% busy",
            "severity": "0",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "opdata": "",
            "suppressed": "0",
            "urls": []
        },
        {
            "eventid": "20615",
            "source": "0",
            "object": "0",
            "objectid": "14281",
            "clock": "1350477541",
            "value": "1",
            "acknowledged": "0",
            "ns": "0",
            "name": "Zabbix trapper processes more than 75% busy",
            "severity": "3",
            "r_eventid": "20616",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "opdata": "",
            "suppressed": "0",
            "urls": []
        }
    ],
    "id": 1
}

Recupero degli eventi riconosciuti dall'utente specificato

Recupero degli eventi riconosciuti dall'utente con ID=10

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "output": "extend",
        "action": 2,
        "action_userids": [10],
        "selectAcknowledges": ["userid", "action"],
        "sortfield": ["eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Risposta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "503",
            "source": "0",
            "object": "0",
            "objectid": "23162",
            "clock": "1747212236",
            "value": "1",
            "acknowledged": "1",
            "ns": "413470863",
            "name": "Number of installed packages has been changed",
            "severity": "2",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "acknowledges": [
                {
                    "userid": "10",
                    "action": "2"
                }
            ],
            "opdata": "",
            "suppressed": "0",
            "urls": []
        }
    ],
    "id": 1
}

Recupero dei principali trigger in base al numero di eventi di problema

Recupera i 5 trigger principali con gravità "Warning", "Average", "High" o "Disaster", insieme al numero di eventi di problema entro un intervallo di tempo specificato.

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "countOutput": true,
        "groupBy": "objectid",
        "source": 0,
        "object": 0,
        "value": 1,
        "time_from": 1672531200,
        "time_till": 1677628800,
        "trigger_severities": [2, 3, 4, 5],
        "sortfield": ["rowscount"],
        "sortorder": "DESC",
        "limit": 5
    },
    "id": 1
}

Risposta:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "objectid": "232124",
            "rowscount": "27"
        },
        {
            "objectid": "29055",
            "rowscount": "23"
        },
        {
            "objectid": "253731",
            "rowscount": "18"
        },
        {
            "objectid": "254062",
            "rowscount": "11"
        },
        {
            "objectid": "23216",
            "rowscount": "7"
        }
    ],
    "id": 1
}

Vedi anche

Fonte

CEvent::get() in ui/include/classes/api/services/CEvent.php.