service.get

Description

integer/array service.get(object parameters)

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

Cette méthode est disponible pour les utilisateurs de tout type. Les autorisations d’appeler 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
serviceids ID/array Retourner uniquement les services avec les ID donnés.
parentids ID/array Retourner uniquement les services liés aux services parents donnés.
deep_parentids flag Retourner tous les services enfants directs et indirects. Utilisé avec parentids.
childids ID/array Retourner uniquement les services liés aux services enfants donnés.
evaltype integer Méthode d’évaluation des tags.

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

Valeurs possibles de l’operator :
0 - (par défaut) Contient ;
1 - Égal à ;
2 - Ne contient pas ;
3 - Différent de ;
4 - Existe ;
5 - N’existe pas.
problem_tags object/array Retourner uniquement les services avec les tags de problème donnés.
Format : [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Un tableau vide retourne tous les services.

Valeurs possibles de l’operator :
0 - (par défaut) Contient ;
1 - Égal à ;
2 - Ne contient pas ;
3 - Différent de ;
4 - Existe ;
5 - N’existe pas.
without_problem_tags flag Retourner uniquement les services sans tags de problème.
slaids ID/array Retourner uniquement les services liés au(x) SLA spécifié(s).
selectChildren query Retourner une propriété children avec les services enfants.

Prend en charge count.
selectParents query Retourner une propriété parents avec les services parents.

Prend en charge count.
selectTags query Retourner une propriété tags avec les tags du service.

Prend en charge count.
selectProblemEvents query Retourner une propriété problem_events avec un tableau d’objets d’événement de problème.

L’objet d’événement de problème possède les propriétés suivantes :
eventid - (ID) ID de l’événement ;
severity - (string) Sévérité actuelle de l’événement ;
name - (string) Nom de l’événement résolu.

Prend en charge count.
selectProblemTags query Retourner une propriété problem_tags avec les tags de problème.

Prend en charge count.
selectStatusRules query Retourner une propriété status_rules avec les règles d’état.

Prend en charge count.
selectStatusTimeline object/array Retourner une propriété status_timeline contenant les changements d’état du service pour les périodes données.

Format [{"period_from": "<period_from>", "period_to": "<period_to>"}, ...] - period_from étant une date de début (incluse ; horodatage entier) et period_to une date de fin (exclue ; horodatage entier) pour la période qui vous intéresse.

Retourne un tableau d’entrées contenant une propriété start_value et un tableau alarms pour les changements d’état au cours des périodes spécifiées.
sortfield string/array Trier le résultat selon les propriétés données.

Valeurs possibles : serviceid, name, status, sortorder, created_at.
countOutput boolean Ces paramètres sont décrits dans le commentaire de référence.
editable boolean
excludeSearch boolean
filter object
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 de tous les services

Récupérez toutes les données concernant tous les services et leurs dépendances.

Requête:

{
    "jsonrpc": "2.0",
    "method": "service.get",
    "params": {
        "output": "extend",
        "selectChildren": "extend",
        "selectParents": ["serviceid", "name"]
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "serviceid": "1",
            "name": "Zabbix cluster",
            "status": "-1",
            "algorithm": "2",
            "sortorder": "0",
            "weight": "0",
            "propagation_rule": "0",
            "propagation_value": "0",
            "description": "",
            "uuid": "8d77bd91b62347e4b79382912eb5df95",
            "created_at": "1761742392",
            "readonly": false,
            "parents": [],
            "children": [
                {
                    "serviceid": "2",
                    "name": "Zabbix server node 1",
                    "status": "-1",
                    "algorithm": "2",
                    "sortorder": "0",
                    "weight": "0",
                    "propagation_rule": "0",
                    "propagation_value": "0",
                    "description": "",
                    "uuid": "195911d26d7f4e218d6217079bcd5929",
                    "created_at": "1761742623",
                    "readonly": false
                },
                {
                    "serviceid": "3",
                    "name": "Zabbix server node 2",
                    "status": "-1",
                    "algorithm": "2",
                    "sortorder": "0",
                    "weight": "0",
                    "propagation_rule": "0",
                    "propagation_value": "0",
                    "description": "",
                    "uuid": "9fc659a30fe244f690dff25fc2a9db5c",
                    "created_at": "1761742654",
                    "readonly": false
                }
            ]
        },
        {
            "serviceid": "2",
            "name": "Zabbix server node 1",
            "status": "-1",
            "algorithm": "2",
            "sortorder": "0",
            "weight": "0",
            "propagation_rule": "0",
            "propagation_value": "0",
            "description": "",
            "uuid": "195911d26d7f4e218d6217079bcd5929",
            "created_at": "1761742623",
            "readonly": false,
            "parents": [
                {
                    "serviceid": "1",
                    "name": "Zabbix cluster"
                }
            ],
            "children": []
        },
        {
            "serviceid": "3",
            "name": "Zabbix server node 2",
            "status": "-1",
            "algorithm": "2",
            "sortorder": "0",
            "weight": "0",
            "propagation_rule": "0",
            "propagation_value": "0",
            "description": "",
            "uuid": "9fc659a30fe244f690dff25fc2a9db5c",
            "created_at": "1761742654",
            "readonly": false,
            "parents": [
                {
                    "serviceid": "1",
                    "name": "Zabbix cluster"
                }
            ],
            "children": []
        }
    ],
    "id": 1
}

Source

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