event.get

Description

integer/array event.get(object parameters)

La méthode permet de récupérer des événements selon les paramètres donnés.

Cette méthode peut renvoyer des événements d’une entité supprimée si ces événements n’ont pas encore été supprimés par le housekeeper.

Cette méthode est disponible pour les utilisateurs de tout type. Les autorisations d’appel de la méthode peuvent être révoquées dans les paramètres du rôle utilisateur. Voir User roles pour plus d’informations.

Paramètres

(object) Paramètres définissant la sortie souhaitée.

La méthode prend en charge les paramètres suivants.

Paramètre Type Description
eventids ID/array Retourner uniquement les événements avec les ID donnés.
groupids ID/array Retourner uniquement les événements créés par des objets appartenant aux groupes d’hôtes donnés.
hostids ID/array Retourner uniquement les événements créés par des objets appartenant aux hôtes donnés.
objectids ID/array Retourner uniquement les événements créés par les objets donnés.
source integer Retourner uniquement les événements du type donné.

Consultez la page de l’objet event pour obtenir la liste des types d’événements pris en charge.

Par défaut : 0 - événements de déclencheur.
object integer Retourner uniquement les événements créés par des objets du type donné.

Consultez la page de l’objet event pour obtenir la liste des types d’objets pris en charge.

Par défaut : 0 - déclencheur.
acknowledged boolean Si défini sur true, retourner uniquement les événements acquittés.
action integer Retourner uniquement les événements pour lesquels les actions de mise à jour d’événement données ont été effectuées. Pour plusieurs actions, utilisez la somme de toutes les valeurs bitmap acceptables comme masque de bits (par exemple, 34 pour acquitter et supprimer un événement).
action_userids ID/array Retourner uniquement les événements avec les ID donnés des utilisateurs ayant effectué les actions de mise à jour d’événement.
suppressed boolean Si défini sur true, retourner uniquement les événements supprimés.
symptom boolean Si défini sur true, retourner uniquement les événements symptomatiques.
severities integer/array Retourner uniquement les événements avec les gravités d’événement données. S’applique uniquement si l’objet est un déclencheur.
trigger_severities integer/array Retourner uniquement les événements avec les gravités de déclencheur données. S’applique uniquement si l’objet est un déclencheur.
evaltype integer Méthode d’évaluation des tags.

Valeurs possibles :
0 - (par défaut) Et/Ou ;
2 - Ou.
tags array Retourner uniquement les événements avec les tags donnés.
Format : [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Un tableau vide retourne tous les événements.

Valeurs possibles de l’opérateur :
0 - (par défaut) Contient ;
1 - Égal ;
2 - Ne contient pas ;
3 - N’est pas égal ;
4 - Existe ;
5 - N’existe pas.
eventid_from string Retourner uniquement les événements avec des ID supérieurs ou égaux à l’ID donné.
eventid_till string Retourner uniquement les événements avec des ID inférieurs ou égaux à l’ID donné.
time_from timestamp Retourner uniquement les événements créés après ou à l’heure donnée.
time_till timestamp Retourner uniquement les événements créés avant ou à l’heure donnée.
problem_time_from timestamp Retourne uniquement les événements qui étaient à l’état de problème à partir de problem_time_from, quel que soit leur état actuel. S’applique uniquement lorsque la source est un événement de déclencheur et que l’objet est un déclencheur. Ce paramètre est obligatoire si problem_time_till est spécifié.
problem_time_till timestamp Retourne uniquement les événements qui étaient à l’état de problème jusqu’à problem_time_till, quel que soit leur état actuel. S’applique uniquement lorsque la source est un événement de déclencheur et que l’objet est un déclencheur. Ce paramètre est obligatoire si problem_time_from est spécifié.
value integer/array Retourner uniquement les événements avec les valeurs données.
selectAcknowledges query Retourner une propriété acknowledges avec les mises à jour d’événement. Les mises à jour d’événement sont triées dans l’ordre chronologique inverse.

L’objet de mise à jour d’événement possède les propriétés suivantes :
acknowledgeid - (ID) ID de l’acquittement ;
userid - (ID) ID de l’utilisateur ayant mis à jour l’événement ;
clock - (timestamp) heure à laquelle l’événement a été mis à jour ;
message - (string) texte du message ;
action - (integer) action de mise à jour qui a été effectuée, voir event.acknowledge ;
old_severity - (integer) gravité de l’événement avant cette action de mise à jour ;
new_severity - (integer) gravité de l’événement après cette action de mise à jour ;
suppress_until - (timestamp) heure jusqu’à laquelle l’événement sera supprimé ;
taskid - (ID) ID de la tâche si l’événement actuel est en cours de changement de rang ;
username - (string) nom d’utilisateur de l’utilisateur ayant mis à jour l’événement ;
name - (string) prénom de l’utilisateur ayant mis à jour l’événement ;
surname - (string) nom de famille de l’utilisateur ayant mis à jour l’événement.

Prend en charge count.
selectAlerts query Retourner une propriété alerts avec les alertes générées par l’événement. Les alertes sont triées dans l’ordre chronologique inverse.
selectHosts query Retourner une propriété hosts avec les hôtes contenant l’objet qui a créé l’événement. Pris en charge uniquement pour les événements générés par des déclencheurs, des éléments ou des règles LLD.
selectRelatedObject query Retourner une propriété relatedObject avec l’objet qui a créé l’événement. Le type d’objet retourné dépend du type d’événement.
selectSuppressionData query Retourner une propriété suppression_data avec la liste des maintenances actives et des suppressions manuelles :
maintenanceid - (ID) ID de la maintenance ;
userid - (ID) ID de l’utilisateur qui a supprimé l’événement ;
suppress_until - (integer) heure jusqu’à laquelle l’événement est supprimé.
selectTags query Retourner une propriété tags avec les tags d’événement.
filter object Retourner uniquement les résultats qui correspondent exactement au filtre donné.

Accepte un objet, où les clés sont des noms de propriété et les valeurs sont soit une valeur unique, soit un tableau de valeurs à faire correspondre.

Ne prend pas en charge les propriétés du type de données text.
sortfield string/array Trier le résultat selon les propriétés données.

Valeurs possibles : eventid, objectid, clock.

Valeurs possibles lorsqu’utilisé avec groupBy : objectid.

Valeurs possibles lorsqu’utilisé avec countOutput et groupBy : objectid, rowscount.
groupBy string/array Grouper les résultats selon les propriétés données. Les propriétés spécifiées seront retournées dans les résultats.

Valeurs possibles : objectid.
countOutput boolean Ces paramètres sont décrits dans le commentaire de référence.
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valeurs de retour

(integer/array) Renvoie soit :

  • un tableau d’objets
  • le nombre d’objets récupérés, si le paramètre countOutput a été utilisé, mais que le paramètre groupBy n’a pas été utilisé
  • un tableau d’objets avec les résultats d’agrégation, si le paramètre groupBy a été utilisé

Exemples

Récupération des événements de déclencheur

Récupérez les événements les plus récents du déclencheur « 22395 ».

Requête:

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

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "20",
            "source": "0",
            "object": "0",
            "objectid": "22395",
            "clock": "1728658089",
            "value": "0",
            "acknowledged": "0",
            "ns": "461809482",
            "name": "Load average is too high (per CPU load over 1.5 for 5m)",
            "severity": "0",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "acknowledges": [],
            "opdata": "Load averages(1m 5m 15m): (1.6328 3.0522 2.2515), # of CPUs: 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": "Load average is too high (per CPU load over 1.5 for 5m)",
            "severity": "3",
            "r_eventid": "20",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "acknowledges": [
                {
                    "acknowledgeid": "1",
                    "userid": "1",
                    "clock": "1728657938",
                    "message": "Testing environment. Please disregard this alert.",
                    "action": "38",
                    "old_severity": "0",
                    "new_severity": "0",
                    "suppress_until": "1728744338",
                    "taskid": "0",
                    "username": "Admin",
                    "name": "Zabbix",
                    "surname": "Administrator"
                }
            ],
            "opdata": "Load averages(1m 5m 15m): (1.6328 3.0522 2.2515), # of CPUs: 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
}

Récupération des événements par période

Récupérez tous les événements créés entre les 17 et 18 octobre 2012, dans l’ordre chronologique inverse.

Requête :

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

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "20617",
            "source": "0",
            "object": "0",
            "objectid": "14282",
            "clock": "1350477816",
            "value": "1",
            "acknowledged": "0",
            "ns": "0",
            "name": "Moins de 25 % libres dans le cache d’historique",
            "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": "Les processus Zabbix trapper sont occupés à plus de 75 %",
            "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": "Les processus Zabbix trapper sont occupés à plus de 75 %",
            "severity": "3",
            "r_eventid": "20616",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "opdata": "",
            "suppressed": "0",
            "urls": []
        }
    ],
    "id": 1
}

Récupération des événements acquittés par l'utilisateur spécifié

Récupération des événements acquittés par l'utilisateur avec ID=10

Requête:

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

Réponse :

{
    "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
}

Récupération des principaux déclencheurs avec le nombre d'événements de problème

Récupérez les 5 principaux déclencheurs ayant les niveaux de gravité « Warning », « Average », « High » ou « Disaster », ainsi que le nombre d'événements de problème sur une période donnée.

Requête :

{
    "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
}

Réponse :

{
    "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
}

Voir aussi

Source

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