problem.get

Description

integer/array problem.get(object parameters)

La méthode permet de récupérer les problèmes selon les paramètres donnés.

Cette méthode sert à récupérer les problèmes non résolus. Il est également possible, si cela est spécifié, de récupérer en plus les problèmes récemment résolus. La période qui détermine à partir de quand un problème est considéré comme « récemment » résolu est définie dans AdministrationGeneral. Les problèmes qui ont été résolus avant cette période ne sont pas conservés dans la table des problèmes. Pour récupérer les problèmes qui ont été résolus plus loin dans le passé, utilisez la méthode event.get.

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

Cette méthode est disponible pour les utilisateurs de tout type. Les autorisations permettant d’appeler la méthode peuvent être révoquées dans les paramètres des rôles 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 problèmes avec les ID donnés.
groupids ID/array Retourner uniquement les problèmes créés par des objets appartenant aux groupes d’hôtes donnés.
hostids ID/array Retourner uniquement les problèmes créés par des objets appartenant aux hôtes donnés.
objectids ID/array Retourner uniquement les problèmes créés par les objets donnés.
source integer Retourner uniquement les problèmes du type donné.

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

Par défaut : 0 - problème créé par un trigger.
object integer Retourner uniquement les problèmes créés par des objets du type donné.

Consultez la page de l’objet d’événement de problème pour obtenir la liste des types d’objets pris en charge.

Par défaut : 0 - trigger.
acknowledged boolean Si défini sur true, retourner uniquement les problèmes acquittés.
action integer Retourner uniquement les problèmes 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 problèmes avec les ID donnés des utilisateurs ayant effectué les actions de mise à jour de l’événement de problème.
suppressed boolean Si défini sur true, retourner uniquement les problèmes supprimés.
symptom boolean Si défini sur true, retourner uniquement les événements de problème symptomatiques.
severities integer/array Retourner uniquement les problèmes avec les sévérités d’événement données. S’applique uniquement si l’objet est un trigger.
evaltype integer Méthode d’évaluation des tags.

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

Valeurs possibles de operator :
0 - (par défaut) Contient ;
1 - Égal à ;
2 - Ne contient pas ;
3 - N’est pas égal à ;
4 - Existe ;
5 - N’existe pas.
recent boolean Si défini sur true, retourner uniquement les problèmes récemment résolus (dépend de ok_period).
eventid_from string Retourner uniquement les problèmes avec des ID supérieurs ou égaux à l’ID donné.
eventid_till string Retourner uniquement les problèmes avec des ID inférieurs ou égaux à l’ID donné.
time_from timestamp Retourner uniquement les problèmes créés après ou au moment indiqué.
time_till timestamp Retourner uniquement les problèmes créés avant ou au moment indiqué.
selectAcknowledges query Retourner une propriété acknowledges avec les mises à jour du problème. Les mises à jour du problème sont triées dans l’ordre chronologique inverse.

L’objet de mise à jour du problème possède les propriétés suivantes :
acknowledgeid - (ID) ID de la mise à jour ;
userid - (ID) ID de l’utilisateur ayant mis à jour l’événement ;
eventid - (ID) ID de l’événement mis à jour ;
clock - (timestamp) heure à laquelle l’événement a été mis à jour ;
message - (string) texte du message ;
action - (integer)type d’action de mise à jour (voir event.acknowledge) ;
old_severity - (integer) sévérité de l’événement avant cette action de mise à jour ;
new_severity - (integer) sévérité 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.

Prend en charge count.
selectTags query Retourner une propriété tags avec les tags du problème. Format de sortie : [{"tag": "<tag>", "value": "<value>"}, ...].
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 ayant supprimé le problème ;
suppress_until - (integer) heure jusqu’à laquelle le problème est supprimé.
filter object Retourner uniquement les résultats correspondant 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 à comparer.

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

Valeurs possibles : eventid.
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 retournées

(integer/array) Retourne soit :

  • un tableau d'objets ;
  • le nombre d'objets récupérés, si le paramètre countOutput a été utilisé.

Exemples

Récupération des événements de problème du déclencheur

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

Requête :

{
    "jsonrpc": "2.0",
    "method": "problem.get",
    "params": {
        "output": "extend",
        "selectAcknowledges": "extend",
        "selectTags": "extend",
        "selectSuppressionData": "extend",
        "objectids": "15112",
        "recent": true,
        "sortfield": ["eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "1245463",
            "source": "0",
            "object": "0",
            "objectid": "15112",
            "clock": "1472457242",
            "ns": "209442442",
            "r_eventid": "1245468",
            "r_clock": "1472457285",
            "r_ns": "125644870",
            "correlationid": "0",
            "userid": "1",
            "name": "L'agent Zabbix sur localhost est injoignable depuis 5 minutes",
            "acknowledged": "1",
            "severity": "3",
            "cause_eventid": "0",
            "opdata": "",
            "acknowledges": [
                {
                    "acknowledgeid": "14443",
                    "userid": "1",
                    "eventid": "1245463",
                    "clock": "1472457281",
                    "message": "problème résolu",
                    "action": "6",
                    "old_severity": "0",
                    "new_severity": "0",
                    "suppress_until": "1472511600",
                    "taskid": "0"
                }
            ],
            "suppression_data": [
                {
                    "maintenanceid": "15",
                    "suppress_until": "1472511600",
                    "userid": "0"
                }
            ],
            "suppressed": "1",
            "tags": [
                {
                    "tag": "test-tag",
                    "value": "test-value"
                }
            ]
        }
    ],
    "id": 1
}

Récupération des problèmes acquittés par l'utilisateur spécifié

Récupération des problèmes acquittés par l'utilisateur avec ID=10

Requête :

{
    "jsonrpc": "2.0",
    "method": "problem.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": "1248566",
            "source": "0",
            "object": "0",
            "objectid": "15142",
            "clock": "1472457242",
            "ns": "209442442",
            "r_eventid": "1245468",
            "r_clock": "1472457285",
            "r_ns": "125644870",
            "correlationid": "0",
            "userid": "10",
            "name": "L'agent Zabbix sur localhost est injoignable depuis 5 minutes",
            "acknowledged": "1",
            "severity": "3",
            "cause_eventid": "0",
            "opdata": "",
            "acknowledges": [
                {
                    "userid": "10",
                    "action": "2"
                }
            ],
            "suppressed": "0"
        }
    ],
    "id": 1
}

See also

Source

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