itemprototype.get
Description
integer/array itemprototype.get(object parameters)
Cette méthode permet de récupérer les prototypes d'élément selon les paramètres donnés.
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 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 |
|---|---|---|
| discoveryids | ID/array | Retourner uniquement les prototypes d’éléments appartenant aux règles LLD données. |
| graphids | ID/array | Retourner uniquement les prototypes d’éléments utilisés dans les prototypes de graphiques donnés. |
| hostids | ID/array | Retourner uniquement les prototypes d’éléments appartenant aux hôtes donnés. |
| inherited | boolean | Si défini sur true, retourner uniquement les prototypes d’éléments hérités d’un modèle. |
| itemids | ID/array | Retourner uniquement les prototypes d’éléments avec les ID donnés. |
| monitored | boolean | Si défini sur true, retourner uniquement les prototypes d’éléments activés appartenant à des hôtes surveillés. |
| templated | boolean | Si défini sur true, retourner uniquement les prototypes d’éléments appartenant à des modèles. |
| templateids | ID/array | Retourner uniquement les prototypes d’éléments appartenant aux modèles donnés. |
| triggerids | ID/array | Retourner uniquement les prototypes d’éléments utilisés dans les prototypes de déclencheurs donnés. |
| selectDiscoveryData | query | Retourner une propriété discoveryData avec les données de l’objet de découverte du prototype d’élément. L’objet de découverte du prototype d’élément relie un prototype d’élément découvert à un prototype d’élément à partir duquel il a été découvert.Il possède les propriétés suivantes : parent_itemid - (string) ID du prototype d’élément à partir duquel le prototype d’élément a été créé ;key_ - (string) clé du prototype d’élément ;status - (int) statut de découverte du prototype d’élément :0 - (par défaut) le prototype d’élément est découvert, 1 - le prototype d’élément n’est plus découvert ; ts_delete - (timestamp) heure à laquelle un prototype d’élément qui n’est plus découvert sera supprimé ;ts_disable - (timestamp) heure à laquelle un prototype d’élément qui n’est plus découvert sera désactivé ;disable_source - (int) indicateur précisant si le prototype d’élément 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 de découverte de bas niveau à laquelle appartient le prototype d’élément. |
| selectDiscoveryRulePrototype | query | Retourner une propriété discoveryRulePrototype avec le prototype de règle LLD parent auquel appartient le prototype d’élément. |
| selectGraphs | query | Retourner une propriété graphs avec les prototypes de graphiques dans lesquels le prototype d’élément est utilisé.Prend en charge count. |
| selectHosts | query | Retourner une propriété hosts avec un tableau des hôtes auxquels appartient le prototype d’élément. |
| selectInheritedTags | query | Retourner une propriété inheritedTags avec les tags présents sur le modèle/l’hôte/les modèles liés. |
| selectTags | query | Retourner les tags du prototype d’élément dans la propriété tags. |
| selectTriggers | query | Retourner une propriété triggers avec les prototypes de déclencheurs dans lesquels le prototype d’élément est utilisé.Prend en charge count. |
| selectPreprocessing | query | Retourner une propriété preprocessing avec les options de prétraitement du prototype d’élément. |
| selectValueMap | query | Retourner une propriété valuemap avec la table de correspondance des valeurs du prototype d’élément. |
| filter | object | Retourner uniquement les résultats qui correspondent 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 de type de données text data type.Prend en charge des propriétés supplémentaires : host - nom technique de l’hôte auquel appartient le prototype d’élément. |
| limitSelects | integer | Limite le nombre d’enregistrements renvoyés par les sous-sélections. S’applique aux sous-sélections suivantes : selectGraphs - les résultats seront triés par name ;selectTriggers - les résultats seront triés par description. |
| sortfield | string/array | Trier le résultat selon les propriétés données. Valeurs possibles : itemid, name, key_, delay, type, status, history, trends, discovered. |
| 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
countOutputa été utilisé.
Exemples
Récupération des prototypes d’éléments depuis une règle LLD
Récupérez tous les prototypes d’éléments pour un ID de règle LLD spécifique.
{
"jsonrpc": "2.0",
"method": "itemprototype.get",
"params": {
"output": "extend",
"discoveryids": "27426"
},
"id": 1
}
Réponse :
{
"jsonrpc": "2.0",
"result": [
{
"itemid": "23077",
"type": "0",
"snmp_oid": "",
"hostid": "10079",
"name": "Incoming network traffic on en0",
"key_": "net.if.in[en0]",
"delay": "1m",
"history": "1w",
"trends": "365d",
"status": "0",
"value_type": "3",
"trapper_hosts": "",
"units": "bps",
"formula": "",
"logtimefmt": "",
"templateid": "0",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "2",
"interfaceid": "0",
"description": "",
"inventory_link": "0",
"lifetime": "7d",
"evaltype": "0",
"jmx_endpoint": "",
"master_itemid": "0",
"timeout": "",
"url": "",
"query_fields": [],
"posts": "",
"status_codes": "200",
"follow_redirects": "1",
"post_type": "0",
"http_proxy": "",
"headers": [],
"retrieve_mode": "0",
"request_method": "0",
"output_format": "0",
"ssl_cert_file": "",
"ssl_key_file": "",
"ssl_key_password": "",
"verify_peer": "0",
"verify_host": "0",
"allow_traps": "0",
"discover": "0",
"uuid": "",
"lifetime_type": "0",
"enabled_lifetime_type": "2",
"enabled_lifetime": "0",
"parameters": []
},
{
"itemid": "10010",
"type": "0",
"snmp_oid": "",
"hostid": "10001",
"name": "Processor load (1 min average per core)",
"key_": "system.cpu.load[percpu,avg1]",
"delay": "1m",
"history": "1w",
"trends": "365d",
"status": "0",
"value_type": "0",
"trapper_hosts": "",
"units": "",
"formula": "",
"logtimefmt": "",
"templateid": "0",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "2",
"interfaceid": "0",
"description": "The processor load is calculated as system CPU load divided by number of CPU cores.",
"inventory_link": "0",
"lifetime": "7d",
"evaltype": "0",
"jmx_endpoint": "",
"master_itemid": "0",
"timeout": "",
"url": "",
"query_fields": [],
"posts": "",
"status_codes": "200",
"follow_redirects": "1",
"post_type": "0",
"http_proxy": "",
"headers": [],
"retrieve_mode": "0",
"request_method": "0",
"output_format": "0",
"ssl_cert_file": "",
"ssl_key_file": "",
"ssl_key_password": "",
"verify_peer": "0",
"verify_host": "0",
"allow_traps": "0",
"discover": "0",
"uuid": "",
"lifetime_type": "0",
"enabled_lifetime_type": "2",
"enabled_lifetime": "0",
"parameters": []
}
],
"id": 1
}
Recherche d’un élément dépendant
Trouver un élément dépendant pour un ID d’élément spécifique.
{
"jsonrpc": "2.0",
"method": "itemprototype.get",
"params": {
"output": "extend",
"filter": {
"type": 18,
"master_itemid": "25545"
},
"limit": "1"
},
"id": 1
}
Réponse :
{
"jsonrpc": "2.0",
"result": [
{
"itemid": "25547",
"type": "18",
"snmp_oid": "",
"hostid": "10116",
"name": "Seconds",
"key_": "apache.status.uptime.seconds",
"delay": "0",
"history": "90d",
"trends": "365d",
"status": "0",
"value_type": "3",
"trapper_hosts": "",
"units": "",
"formula": "",
"logtimefmt": "",
"templateid": "0",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "0",
"interfaceid": "0",
"description": "",
"inventory_link": "0",
"lifetime": "7d",
"evaltype": "0",
"jmx_endpoint": "",
"master_itemid": "25545",
"timeout": "",
"url": "",
"query_fields": [],
"posts": "",
"status_codes": "200",
"follow_redirects": "1",
"post_type": "0",
"http_proxy": "",
"headers": [],
"retrieve_mode": "0",
"request_method": "0",
"output_format": "0",
"ssl_cert_file": "",
"ssl_key_file": "",
"ssl_key_password": "",
"verify_peer": "0",
"verify_host": "0",
"allow_traps": "0",
"discover": "0",
"uuid": "",
"lifetime_type": "0",
"enabled_lifetime_type": "2",
"enabled_lifetime": "0",
"parameters": []
}
],
"id": 1
}
Rechercher un prototype d’élément d’agent HTTP
Recherchez un prototype d’élément d’agent HTTP avec la méthode de requête HEAD pour un ID d’hôte spécifique.
Requête :
{
"jsonrpc": "2.0",
"method": "itemprototype.get",
"params": {
"hostids": "10254",
"filter": {
"type": 19,
"request_method": 3
}
},
"id": 1
}
Réponse :
{
"jsonrpc": "2.0",
"result": [
{
"itemid": "28257",
"type": "19",
"snmp_oid": "",
"hostid": "10254",
"name": "discovered",
"key_": "item[{#INAME}]",
"delay": "{#IUPDATE}",
"history": "90d",
"trends": "30d",
"status": "0",
"value_type": "3",
"trapper_hosts": "",
"units": "",
"formula": "",
"logtimefmt": "",
"templateid": "28255",
"valuemapid": "0",
"params": "",
"ipmi_sensor": "",
"authtype": "0",
"username": "",
"password": "",
"publickey": "",
"privatekey": "",
"flags": "2",
"interfaceid": "2",
"description": "",
"inventory_link": "0",
"lifetime": "7d",
"evaltype": "0",
"jmx_endpoint": "",
"master_itemid": "0",
"timeout": "",
"url": "{#IURL}",
"query_fields": [],
"posts": "",
"status_codes": "",
"follow_redirects": "0",
"post_type": "0",
"http_proxy": "",
"headers": [],
"retrieve_mode": "0",
"request_method": "3",
"output_format": "0",
"ssl_cert_file": "",
"ssl_key_file": "",
"ssl_key_password": "",
"verify_peer": "0",
"verify_host": "0",
"allow_traps": "0",
"discover": "0",
"uuid": "",
"lifetime_type": "0",
"enabled_lifetime_type": "2",
"enabled_lifetime": "0",
"parameters": []
}
],
"id": 1
}
Voir également
Source
CItemPrototype::get() dans ui/include/classes/api/services/CItemPrototype.php.