Sommaire
hostprototype.get
Description
integer/array hostprototype.get(object parameters)
La 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 Rôles utilisateur 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 |
|---|---|---|
| hostids | ID/array | Retourne uniquement les prototypes d'hôte avec les ID donnés. |
| discoveryids | ID/array | Retourne uniquement les prototypes d'hôte qui appartiennent aux règles LLD données. |
| inherited | boolean | Si défini sur true, retourne uniquement les éléments hérités d'un modèle. |
| selectDiscoveryData | query | Retourne 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 lie 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) moment où un prototype d'hôte qui n'est plus découvert sera supprimé;ts_disable - (timestamp) moment où 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 | Retourne une propriété discoveryRule avec la règle LLD à laquelle appartient le prototype d'hôte. |
| selectDiscoveryRulePrototype | query | Retourne une propriété discoveryRulePrototype avec le prototype de règle LLD parent auquel appartient le prototype d'hôte. |
| selectInterfaces | query | Retourne une propriété interfaces avec les interfaces personnalisées du prototype d'hôte. |
| selectGroupLinks | query | Retourne une propriété groupLinks avec les liens de groupe du prototype d'hôte. |
| selectGroupPrototypes | query | Retourne une propriété groupPrototypes avec les prototypes de groupe du prototype d'hôte. |
| selectMacros | query | Retourne une propriété macros avec les macros du prototype d'hôte. |
| selectParentHost | query | Retourne une propriété parentHost avec l'hôte auquel appartient le prototype d'hôte. |
| selectTags | query | Retourne une propriété tags avec les balises du prototype d'hôte. |
| selectTemplates | query | Retourne une propriété templates avec les modèles liés au prototype d'hôte.Prend en charge count. |
| sortfield | string/array | Trie 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, leurs prototypes de groupe et leurs tags à partir d'une règle LLD.
Requête :
{
"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",
"flags": "2",
"discover": "0",
"custom_interfaces": "1",
"inventory_mode": "-1",
"groupLinks": [
{
"group_prototypeid": "4",
"hostid": "10092",
"groupid": "7",
"templateid": "0"
}
],
"groupPrototypes": [
{
"group_prototypeid": "7",
"hostid": "10092",
"name": "{#CLUSTER.NAME}",
"templateid": "0"
}
],
"tags": [
{
"tag": "datacenter",
"value": "{#DATACENTER.NAME}"
},
{
"tag": "instance-type",
"value": "{#INSTANCE_TYPE}"
}
],
"interfaces": [
{
"main": "1",
"type": "2",
"useip": "1",
"ip": "127.0.0.1",
"dns": "",
"port": "161",
"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.