Sommaire
hostprototype.get
Description
integer/array hostprototype.get(object parameters)
Cette méthode permet de récupérer des prototypes d'hôte selon les paramètres fournis.
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 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 |
|---|---|---|
| hostids | ID/array | Retourner uniquement les prototypes d'hôte avec les ID donnés. |
| discoveryids | ID/array | Retourner uniquement les prototypes d'hôte qui appartiennent aux règles LLD données. |
| inherited | boolean | Si défini sur true, retourner uniquement les éléments hérités d'un modèle. |
| selectDiscoveryData | query | Retourner une propriété discoveryData avec les données de l'objet de découverte du prototype d'hôte. L'objet de découverte du prototype d'hôte relie un prototype d'hôte découvert à un prototype d'hôte à partir duquel il a été découvert.Il possède les propriétés suivantes : host - (string) ID de l'hôte ;parent_hostid - (string) ID du prototype d'hôte à partir duquel le prototype d'hôte a été créé ;status - (int) statut de découverte du prototype d'hôte :0 - (par défaut) le prototype d'hôte est découvert, 1 - le prototype d'hôte n'est plus découvert ; ts_delete - (timestamp) heure à laquelle un prototype d'hôte qui n'est plus découvert sera supprimé ;ts_disable - (timestamp) heure à laquelle un prototype d'hôte qui n'est plus découvert sera désactivé ;disable_source - (int) indicateur précisant si le prototype d'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. |
| selectDiscoveryRule | query | Retourner une propriété discoveryRule avec la règle LLD à laquelle appartient le prototype d'hôte. |
| selectDiscoveryRulePrototype | query | Retourner une propriété discoveryRulePrototype avec le prototype de règle LLD parent auquel appartient le prototype d'hôte. |
| selectInterfaces | query | Retourner une propriété interfaces avec les interfaces personnalisées du prototype d'hôte. |
| selectGroupLinks | query | Retourner une propriété groupLinks avec les liens de groupes du prototype d'hôte. |
| selectGroupPrototypes | query | Retourner une propriété groupPrototypes avec les prototypes de groupes du prototype d'hôte. |
| selectInheritedTags | query | Retourner une propriété inheritedTags avec les tags présents sur les modèles liés. |
| selectMacros | query | Retourner une propriété macros avec les macros du prototype d'hôte. |
| selectParentHost | query | Retourner une propriété parentHost avec l'hôte auquel appartient le prototype d'hôte. |
| selectTags | query | Retourner une propriété tags avec les tags du prototype d'hôte. |
| selectTemplates | query | Retourner une propriété templates avec les modèles liés au prototype d'hôte.Prend en charge count. |
| sortfield | string/array | Trier le résultat selon les propriétés données. Valeurs possibles : hostid, host, name, status, discovered. |
| 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 de retour
(integer/array) Renvoie soit :
- un tableau d’objets ;
- le nombre d’objets récupérés, si le paramètre
countOutputa été utilisé.
Exemples
Récupération des prototypes d'hôte à partir d'une règle LLD
Récupérez tous les prototypes d'hôte, leurs liens de groupe, prototypes de groupe et tags à partir d'une règle LLD.
{
"jsonrpc": "2.0",
"method": "hostprototype.get",
"params": {
"output": "extend",
"selectInterfaces": "extend",
"selectGroupLinks": "extend",
"selectGroupPrototypes": "extend",
"selectTags": "extend",
"discoveryids": "23554"
},
"id": 1
}
Réponse :
{
"jsonrpc": "2.0",
"result": [
{
"hostid": "10092",
"host": "{#HV.UUID}",
"name": "{#HV.UUID}",
"status": "0",
"templateid": "0",
"discover": "0",
"custom_interfaces": "1",
"uuid": "051a1469d4d045cbbf818fcc843a352e",
"flags": "2",
"inventory_mode": "-1",
"tags": [
{
"tag": "datacenter",
"value": "{#DATACENTER.NAME}"
},
{
"tag": "instance-type",
"value": "{#INSTANCE_TYPE}"
}
],
"groupLinks": [
{
"group_prototypeid": "4",
"hostid": "10092",
"groupid": "7",
"templateid": "0"
}
],
"groupPrototypes": [
{
"group_prototypeid": "7",
"hostid": "10092",
"name": "{#CLUSTER.NAME}",
"templateid": "0"
}
],
"interfaces": [
{
"main": "1",
"type": "2",
"useip": "1",
"ip": "127.0.0.1",
"dns": "",
"port": "161",
"available": "0",
"error": "",
"errors_from": "0",
"disable_until": "0",
"details": {
"version": "2",
"bulk": "1",
"community": "{$SNMP_COMMUNITY}",
"max_repetitions": "10"
}
}
]
}
],
"id": 1
}
Voir aussi
Source
CHostPrototype::get() dans ui/include/classes/api/services/CHostPrototype.php.