itemprototype.get

Descrizione

integer/array itemprototype.get(object parameters)

Il metodo consente di recuperare i prototipi di item in base ai parametri specificati.

Questo metodo è disponibile per utenti di qualsiasi tipo. I permessi per chiamare il metodo possono essere revocati nelle impostazioni del ruolo utente. Vedere User roles per ulteriori informazioni.

Parametri

(object) Parametri che definiscono l'output desiderato.

Il metodo supporta i seguenti parametri.

Parameter Type Description
discoveryids ID/array Restituisce solo i prototipi di item che appartengono alle regole LLD specificate.
graphids ID/array Restituisce solo i prototipi di item utilizzati nei prototipi di grafico specificati.
hostids ID/array Restituisce solo i prototipi di item che appartengono agli host specificati.
inherited boolean Se impostato su true, restituisce solo i prototipi di item ereditati da un template.
itemids ID/array Restituisce solo i prototipi di item con gli ID specificati.
monitored boolean Se impostato su true, restituisce solo i prototipi di item abilitati che appartengono a host monitorati.
templated boolean Se impostato su true, restituisce solo i prototipi di item che appartengono ai template.
templateids ID/array Restituisce solo i prototipi di item che appartengono ai template specificati.
triggerids ID/array Restituisce solo i prototipi di item utilizzati nei prototipi di trigger specificati.
selectDiscoveryData query Restituisce una proprietà discoveryData con i dati dell'oggetto di discovery del prototipo di item. L'oggetto di discovery del prototipo di item collega un prototipo di item rilevato a un prototipo di item da cui è stato rilevato.

Ha le seguenti proprietà:
parent_itemid - (string) ID del prototipo di item da cui è stato creato il prototipo di item;
key_ - (string) chiave del prototipo di item;
status - (int) stato di discovery del prototipo di item:
0 - (predefinito) il prototipo di item è rilevato,
1 - il prototipo di item non è più rilevato;
ts_delete - (timestamp) momento in cui un prototipo di item non più rilevato verrà eliminato;
ts_disable - (timestamp) momento in cui un prototipo di item non più rilevato verrà disabilitato;
disable_source - (int) indicatore che specifica se il prototipo di item è stato disabilitato da una regola LLD o manualmente:
0 - (predefinito) disabilitato automaticamente,
1 - disabilitato da una regola LLD.
selectDiscoveryRule query Restituisce una proprietà discoveryRule con la regola di low-level discovery a cui appartiene il prototipo di item.
selectDiscoveryRulePrototype query Restituisce una proprietà discoveryRulePrototype con il prototipo della regola LLD padre a cui appartiene il prototipo di item.
selectGraphs query Restituisce una proprietà graphs con i prototipi di grafico in cui viene utilizzato il prototipo di item.

Supporta count.
selectHosts query Restituisce una proprietà hosts con un array di host a cui appartiene il prototipo di item.
selectInheritedTags query Restituisce una proprietà inheritedTags con i tag presenti su template/host/template collegati.
selectTags query Restituisce i tag del prototipo di item nella proprietà tags.
selectTriggers query Restituisce una proprietà triggers con i prototipi di trigger in cui viene utilizzato il prototipo di item.

Supporta count.
selectPreprocessing query Restituisce una proprietà preprocessing con le opzioni di preprocessing del prototipo di item.
selectValueMap query Restituisce una proprietà valuemap con la mappa dei valori del prototipo di item.
filter object Restituisce solo i risultati che corrispondono esattamente al filtro specificato.

Accetta un oggetto in cui le chiavi sono nomi di proprietà e i valori sono un singolo valore oppure un array di valori da confrontare.

Non supporta proprietà del tipo di dati text.

Supporta proprietà aggiuntive:
host - nome tecnico dell'host a cui appartiene il prototipo di item.
limitSelects integer Limita il numero di record restituiti dalle sotto-selezioni.

Si applica alle seguenti sotto-selezioni:
selectGraphs - i risultati saranno ordinati per name;
selectTriggers - i risultati saranno ordinati per description.
sortfield string/array Ordina il risultato in base alle proprietà specificate.

Valori possibili: itemid, name, key_, delay, type, status, history, trends, discovered.
countOutput boolean Questi parametri sono descritti nel commento di riferimento.
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Valori restituiti

(integer/array) Restituisce o:

  • una matrice di oggetti;
  • il conteggio degli oggetti recuperati, se il parametro countOutput è stato usato.

Esempi

Recupero dei prototipi di item da una regola LLD

Recupera tutti i prototipi di item per uno specifico ID di regola LLD.

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.get",
    "params": {
        "output": "extend",
        "discoveryids": "27426"
    },
    "id": 1
}

Risposta:

{
    "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": "Il carico del processore è calcolato come carico della CPU del sistema diviso per il numero di core della CPU.",
            "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
}

Trovare un item dipendente

Trova un item dipendente per uno specifico ID item.

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.get",
    "params": {
        "output": "extend",
        "filter": {
            "type": 18,
            "master_itemid": "25545"
        },
        "limit": "1"
    },
    "id": 1
}

Risposta:

{
    "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
}

Trovare il prototipo di item HTTP agent

Trovare il prototipo di item HTTP agent con metodo di richiesta HEAD per uno specifico ID host.

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.get",
    "params": {
        "hostids": "10254",
        "filter": {
            "type": 19,
            "request_method": 3
        }
    },
    "id": 1
}

Risposta:

{
    "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
}

Vedi anche

Fonte

CItemPrototype::get() in ui/include/classes/api/services/CItemPrototype.php.