host.get

Description

integer/array host.get(object parameters)

La méthode permet de récupérer des hôtes selon les paramètres fournis.

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.

Parameter Type Description
groupids ID/array Retourne uniquement les hôtes qui appartiennent aux groupes donnés.
dserviceids ID/array Retourne uniquement les hôtes qui sont liés aux services découverts donnés.
graphids ID/array Retourne uniquement les hôtes qui ont les graphiques donnés.
hostids ID/array Retourne uniquement les hôtes avec les ID d'hôte donnés.
httptestids ID/array Retourne uniquement les hôtes qui ont les vérifications web données.
interfaceids ID/array Retourne uniquement les hôtes qui utilisent les interfaces données.
itemids ID/array Retourne uniquement les hôtes qui ont les éléments donnés.
maintenanceids ID/array Retourne uniquement les hôtes affectés par les maintenances données.
monitored_hosts flag Retourne uniquement les hôtes surveillés.
proxyids ID/array Retourne uniquement les hôtes surveillés par les proxys donnés.
proxy_groupids ID/array Retourne uniquement les hôtes surveillés par les groupes de proxys donnés.
templated_hosts flag Retourne à la fois les hôtes et les modèles.
templateids ID/array Retourne uniquement les hôtes liés aux modèles donnés.
triggerids ID/array Retourne uniquement les hôtes qui ont les déclencheurs donnés.
with_items flag Retourne uniquement les hôtes qui ont des éléments.

Remplace les paramètres with_monitored_items et with_simple_graph_items.
with_item_prototypes flag Retourne uniquement les hôtes qui ont des prototypes d'élément.

Remplace le paramètre with_simple_graph_item_prototypes.
with_simple_graph_item_prototypes flag Retourne uniquement les hôtes qui ont des prototypes d'élément, activés pour la création et dont le type d'information est numérique.
with_graphs flag Retourne uniquement les hôtes qui ont des graphiques.
with_graph_prototypes flag Retourne uniquement les hôtes qui ont des prototypes de graphique.
with_httptests flag Retourne uniquement les hôtes qui ont des vérifications web.

Remplace le paramètre with_monitored_httptests.
with_monitored_httptests flag Retourne uniquement les hôtes qui ont des vérifications web activées.
with_monitored_items flag Retourne uniquement les hôtes qui ont des éléments activés.

Remplace le paramètre with_simple_graph_items.
with_monitored_triggers flag Retourne uniquement les hôtes qui ont des déclencheurs activés. Tous les éléments utilisés dans le déclencheur doivent également être activés.
with_simple_graph_items flag Retourne uniquement les hôtes qui ont des éléments dont le type d'information est numérique.
with_triggers flag Retourne uniquement les hôtes qui ont des déclencheurs.

Remplace le paramètre with_monitored_triggers.
withProblemsSuppressed boolean Si défini sur true, retourne uniquement les hôtes avec des problèmes supprimés.
evaltype integer Méthode d'évaluation des balises.

Valeurs possibles :
0 - (par défaut) Et/Ou ;
2 - Ou.
severities integer/array Retourne les hôtes qui n'ont que des problèmes avec les sévérités données. S'applique uniquement si l'objet problème est un déclencheur.
tags object/array Retourne uniquement les hôtes avec les balises données.
Format : [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Un tableau vide retourne tous les hôtes.

Valeurs possibles de operator :
0 - (par défaut) Contient ;
1 - Égal à ;
2 - Ne contient pas ;
3 - Différent de ;
4 - Existe ;
5 - N'existe pas.
inheritedTags boolean Retourne les hôtes qui ont les balises données également dans tous leurs modèles liés.

Valeurs possibles :
true - les modèles liés doivent également avoir les balises données ;
false - (par défaut) les balises des modèles liés sont ignorées.
selectDiscoveries query Retourne une propriété discoveries avec les règles de découverte de bas niveau de l'hôte.

Prend en charge count.
selectDiscoveryRule query Retourne une propriété discoveryRule avec la règle de découverte de bas niveau qui a créé l'hôte (à partir du prototype d'hôte dans la supervision VMware).
selectGraphs query Retourne une propriété graphs avec les graphiques de l'hôte.

Prend en charge count.
selectHostDiscovery query Retourne une propriété hostDiscovery avec les données de l'objet de découverte d'hôte.

L'objet de découverte d'hôte lie un hôte découvert à un prototype d'hôte ou des prototypes d'hôte à une règle LLD et possède les propriétés suivantes :
host - (string) hôte du prototype d'hôte ;
hostid - (string) ID de l'hôte découvert ou du prototype d'hôte ;
parent_hostid - (string) ID du prototype d'hôte à partir duquel l'hôte a été créé ;
parent_itemid - (string) ID de la règle LLD qui a créé l'hôte découvert ;
lastcheck - (timestamp) heure à laquelle l'hôte a été découvert pour la dernière fois ;
status - (int) statut de découverte de l'hôte :
0 - (par défaut) l'hôte est découvert,
1 - l'hôte n'est plus découvert ;
ts_delete - (timestamp) heure à laquelle un hôte qui n'est plus découvert sera supprimé ;
ts_disable - (timestamp) heure à laquelle un hôte qui n'est plus découvert sera désactivé ;
disable_source - (int) indicateur indiquant si l'hôte a été désactivé par une règle LLD ou manuellement :
0 - (par défaut) désactivé automatiquement,
1 - désactivé par une règle LLD.
selectHostGroups query Retourne une propriété hostgroups avec les données des groupes d'hôtes auxquels l'hôte appartient.
selectHttpTests query Retourne une propriété httpTests avec les scénarios web de l'hôte.

Prend en charge count.
selectInterfaces query Retourne une propriété interfaces avec les interfaces de l'hôte.

Prend en charge count.
selectInventory query Retourne une propriété inventory avec les données d'inventaire de l'hôte.
selectItems query Retourne une propriété items avec les éléments de l'hôte.

Prend en charge count.
selectMacros query Retourne une propriété macros avec les macros de l'hôte.
selectParentTemplates query Retourne une propriété parentTemplates avec les modèles auxquels l'hôte est lié.

En plus des champs de l'objet Template, elle contient link_type - (integer) la manière dont le modèle est lié à l'hôte.
Valeurs possibles :
0 - (par défaut) lié manuellement ;
1 - lié automatiquement par LLD.

Prend en charge count.
selectDashboards query Retourne une propriété dashboards.

Prend en charge count.
selectTags query Retourne une propriété tags avec les balises de l'hôte.
selectInheritedTags query Retourne une propriété inheritedTags avec les balises présentes sur tous les modèles liés à l'hôte.
selectTriggers query Retourne une propriété triggers avec les déclencheurs de l'hôte.

Prend en charge count.
selectValueMaps query Retourne une propriété valuemaps avec les mappages de valeurs de l'hôte.
filter object Retourne uniquement les résultats qui correspondent exactement au filtre donné.

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

Ne prend pas en charge les propriétés de type de données text data type.

Prend en charge des propriétés supplémentaires : propriétés de Host interface.
limitSelects integer Limite le nombre d'enregistrements renvoyés par les sous-sélections.

S'applique aux sous-sélections suivantes :
selectParentTemplates - les résultats seront triés par host ;
selectInterfaces ;
selectItems - triés par name ;
selectDiscoveries - triés par name ;
selectTriggers - triés par description ;
selectGraphs - triés par name ;
selectDashboards - triés par name.
search object Retourne les résultats correspondant au modèle donné (insensible à la casse).

Accepte un objet, où les clés sont des noms de propriétés et les valeurs sont des chaînes à rechercher. Si aucune option supplémentaire n'est fournie, cela effectuera une recherche LIKE "%…%".

Prend en charge uniquement les propriétés de type de données string et text data type.

Prend en charge des propriétés supplémentaires : propriétés de Host interface.
searchInventory object Retourne les hôtes dont les données d'inventaire correspondent au modèle donné (insensible à la casse).

Accepte un objet, où les clés sont des noms de propriétés et les valeurs sont des chaînes à rechercher. Si aucune option supplémentaire n'est fournie, cela effectuera une recherche LIKE "%…%".

Prend en charge uniquement les propriétés de type de données string et text data type.
sortfield string/array Trie le résultat selon les propriétés données.

Valeurs possibles : hostid, host, name, status.
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
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean
selectGroups
(deprecated)
query Ce paramètre est obsolète, veuillez utiliser selectHostGroups à la place.
Retourne une propriété groups avec les données des groupes d'hôtes auxquels l'hôte appartient.

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 données par nom

Récupérez toutes les données concernant deux hôtes nommés "Zabbix server" et "Linux server".

Requête:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "filter": {
            "host": [
                "Zabbix server",
                "Linux server"
            ]
        }
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10160",
            "proxyid": "0",
            "host": "Zabbix server",
            "status": "0",
            "ipmi_authtype": "-1",
            "ipmi_privilege": "2",
            "ipmi_username": "",
            "ipmi_password": "",
            "maintenanceid": "0",
            "maintenance_status": "0",
            "maintenance_type": "0",
            "maintenance_from": "0",
            "name": "Zabbix server",
            "flags": "0",
            "description": "Le serveur de supervision Zabbix.",
            "tls_connect": "1",
            "tls_accept": "1",
            "tls_issuer": "",
            "tls_subject": "",
            "proxy_groupid": "0",
            "monitored_by": "0",
            "inventory_mode": "1",
            "active_available": "1",
            "assigned_proxyid": "0"
        },
        {
            "hostid": "10167",
            "proxyid": "0",
            "host": "Linux server",
            "status": "0",
            "ipmi_authtype": "-1",
            "ipmi_privilege": "2",
            "ipmi_username": "",
            "ipmi_password": "",
            "maintenanceid": "0",
            "maintenance_status": "0",
            "maintenance_type": "0",
            "maintenance_from": "0",
            "name": "Linux server",
            "flags": "0",
            "description": "",
            "tls_connect": "1",
            "tls_accept": "1",
            "tls_issuer": "",
            "tls_subject": "",
            "proxy_groupid": "0",
            "monitored_by": "0",
            "inventory_mode": "1",
            "active_available": "1",
            "assigned_proxyid": "0"
        }
    ],
    "id": 1
}

Récupération des groupes d'hôtes

Récupérez les groupes d'hôtes dont l'hôte "Zabbix server" est membre.

Requête:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["hostid"],
        "selectHostGroups": "extend",
        "filter": {
            "host": [
                "Zabbix server"
            ]
        }
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10085",
            "hostgroups": [
                {
                    "groupid": "2",
                    "name": "Linux servers",
                    "flags": "0",
                    "uuid": "dc579cd7a1a34222933f24f52a68bcd8"
                },
                {
                    "groupid": "4",
                    "name": "Zabbix servers",
                    "flags": "0",
                    "uuid": "6f6799aa69e844b4b3918f779f2abf08"
                }
            ]
        }
    ],
    "id": 1
}

Récupération des modèles liés

Récupérez les ID et les noms des modèles liés à l’hôte « 10084 ».

Requête:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["hostid"],
        "selectParentTemplates": [
            "templateid",
            "name"
        ],
        "hostids": "10084"
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10084",
            "parentTemplates": [
                {
                    "name": "Linux",
                    "templateid": "10001"
                },
                {
                    "name": "Zabbix Server",
                    "templateid": "10047"
                }
            ]
        }
    ],
    "id": 1
}

Récupération des hôtes par modèle

Récupérez les hôtes auxquels le modèle « 10001 » (Linux by Zabbix agent) est lié.

Requête :

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["hostid", "name"],
        "templateids": "10001"
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "templateid": "10001",
            "hosts": [
                {
                    "hostid": "10084",
                    "name": "Zabbix server"
                },
                {
                    "hostid": "10603",
                    "name": "Host 1"
                },
                {
                    "hostid": "10604",
                    "name": "Host 2"
                }
            ]
        }
    ],
    "id": 1
}

Recherche par données d'inventaire de l'hôte

Récupérez les hôtes qui contiennent « Linux » dans le champ « OS » de l'inventaire de l'hôte.

Requête :

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": [
            "host"
        ],
        "selectInventory": [
            "os"
        ],
        "searchInventory": {
            "os": "Linux"
        }
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10084",
            "host": "Zabbix server",
            "inventory": {
                "os": "Linux Ubuntu"
            }
        },
        {
            "hostid": "10107",
            "host": "Linux server",
            "inventory": {
                "os": "Linux Mint"
            }
        }
    ],
    "id": 1
}

Recherche par tags d'hôte

Récupérez les hôtes ayant le tag "host-name" égal à "linux-server".

Requête:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["hostid"],
        "selectTags": "extend",
        "evaltype": 0,
        "tags": [
            {
                "tag": "host-name",
                "value": "linux-server",
                "operator": 1
            }
        ]
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10085",
            "tags": [
                {
                    "tag": "host-name",
                    "value": "linux-server",
                    "automatic": "0"
                },
                {
                    "tag": "os",
                    "value": "rhel-7",
                    "automatic": "0"
                }
            ]
        }
    ],
    "id": 1
}

Récupérez les hôtes ayant ces tags non seulement au niveau de l'hôte, mais aussi dans leurs modèles parents liés.

Requête:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["name"],
        "tags": [
            {
                "tag": "os",
                "value": "rhel-7",
                "operator": 1
            }
        ],
        "inheritedTags": true
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10623",
            "name": "PC room 1"
        },
        {
            "hostid": "10601",
            "name": "Office"
        }
    ],
    "id": 1
}

Recherche d’un hôte avec des tags et des tags de modèle

Récupérez un hôte avec ses tags et tous les tags liés aux modèles parents.

Requête:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["name"],
        "hostids": 10502,
        "selectTags": ["tag", "value"],
        "selectInheritedTags": ["tag", "value"]
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10502",
            "name": "Desktop",
            "tags": [
                {
                    "tag": "host-name",
                    "value": "linux-server"
                },
                {
                    "tag": "os",
                    "value": "rhel-7"
                }
            ],
            "inheritedTags": [
                {
                    "tag": "class",
                    "value": "os"
                },
                {
                    "tag": "target",
                    "value": "linux"
                },
                {
                    "tag": "os",
                    "value": "rhel-7"
                }
            ]
        }
    ],
    "id": 1
}

Recherche d'hôtes par gravité de problème

Récupérez les hôtes qui ont des problèmes de niveau « Désastre ».

Requête:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["name"],
        "severities": 5
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10160",
            "name": "Zabbix server"
        }
    ],
    "id": 1
}

Récupérez les hôtes qui ont des problèmes de niveau « Moyen » et « Élevé ».

Requête:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["name"],
        "severities": [3, 4]
    },
    "id": 1
}

Réponse :

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "20170",
            "name": "Database"
        },
        {
            "hostid": "20183",
            "name": "workstation"
        }
    ],
    "id": 1
}

Récupération des éléments de l'hôte

Récupérez les éléments pour l'hôte "Zabbix server". La requête est limitée aux propriétés d'élément itemid, name et status. En raison de la grande taille de la réponse, seul un sous-ensemble d'éléments est affiché dans l'exemple.

Requête :

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["hostid"],
        "selectItems": ["itemid","name","status"],
        "filter": {
            "host": [
                "Zabbix server"
            ]
        }
    },
    "id": 1
}

Réponse :

{
  "jsonrpc": "2.0",
  "result": [
    {
      "hostid": "10084",
      "items": [
        {
          "itemid": "42227",
          "name": "Nom d'hôte de l'agent Zabbix en cours d'exécution",
          "status": "0"
        },
        {
          "itemid": "42237",
          "name": "Ping de l'agent Zabbix",
          "status": "0"
        },
        {
          "itemid": "42250",
          "name": "Version de l'agent Zabbix en cours d'exécution",
          "status": "0"
        },
        {
          "itemid": "42251",
          "name": "Nombre maximal de descripteurs de fichiers ouverts",
          "status": "0"
        },
        {
          "itemid": "42252",
          "name": "Nombre maximal de processus",
          "status": "0"
        },
        {
          "itemid": "69869",
          "name": "Interface enp0s3: Paquets entrants rejetés",
          "status": "0"
        },
        {
          "itemid": "69870",
          "name": "Interface enp0s3: Paquets entrants avec erreurs",
          "status": "0"
        },
        {
          "itemid": "69871",
          "name": "Interface enp0s3: Bits reçus",
          "status": "0"
        },
        {
          "itemid": "69872",
          "name": "Interface enp0s3: Paquets sortants rejetés",
          "status": "0"
        },
        {
          "itemid": "69873",
          "name": "Interface enp0s3: Paquets sortants avec erreurs",
          "status": "0"
        },
        {
          "itemid": "69874",
          "name": "Interface enp0s3: Bits envoyés",
          "status": "0"
        },
        {
          "itemid": "42253",
          "name": "Nombre de processus",
          "status": "0"
        },
        {
          "itemid": "42254",
          "name": "Nombre de processus en cours d'exécution",
          "status": "0"
        },
        {
          "itemid": "42255",
          "name": "Heure de démarrage du système",
          "status": "0"
        }
      ]
    }
  ],
  "id": 1
}

Voir aussi

Source

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