itemprototype.update
Descrizione
object itemprototype.update(object/array itemPrototypes)
Questo metodo consente di aggiornare prototipi di item esistenti.
Questo metodo è disponibile solo per i tipi di utente Admin e Super admin. Le autorizzazioni per chiamare il metodo possono essere revocate nelle impostazioni del ruolo utente. Per ulteriori informazioni, vedere Ruoli utente.
Parametri
(object/array) Proprietà dei prototipi di item da aggiornare.
La proprietà itemid deve essere definita per ciascun prototipo di item, tutte le altre
proprietà sono facoltative. Verranno aggiornate solo le proprietà passate, tutte
le altre rimarranno invariate.
Oltre alle proprietà standard del prototipo di item, il metodo accetta i seguenti parametri.
| Parametro | Type | Descrizione |
|---|---|---|
| preprocessing | array | Opzioni di preprocessing del prototipo di item per sostituire le opzioni di preprocessing correnti. Comportamento del parametro: - sola lettura per gli oggetti ereditati |
| tags | array | Tag del prototipo di item. |
Valori di ritorno
(object) Restituisce un oggetto contenente gli ID dei prototipi elemento aggiornati
sotto la proprietà itemids.
Esempi
Modifica dell'interfaccia di un prototipo di item
Modificare l'interfaccia del host che verrà utilizzata dagli item rilevati.
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"itemid": "27428",
"interfaceid": "132"
},
"id": 1
}
Risposta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"27428"
]
},
"id": 1
}
Aggiornare il prototipo di item dipendente
Aggiorna il prototipo di item dipendente con un nuovo ID del prototipo di item master. Sono consentite solo dipendenze sullo stesso host (template/regola di discovery), pertanto il master e l'item dipendente devono avere lo stesso hostid e ruleid.
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"master_itemid": "25570",
"itemid": "189030"
},
"id": 1
}
Risposta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"189030"
]
},
"id": 1
}
Aggiornare il prototipo di item HTTP agent
Modificare i campi della query e rimuovere tutte le intestazioni personalizzate.
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"itemid":"28305",
"query_fields": [
{
"name": "random",
"value": "qwertyuiopasdfghjklzxcvbnm"
}
],
"headers": []
}
"id": 1
}
Risposta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"28305"
]
},
"id": 1
}
Aggiornamento delle opzioni di preprocessing degli item
Aggiorna un prototipo di item con la regola di preprocessing dell'item “Moltiplicatore personalizzato”.
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"itemid": "44211",
"preprocessing": [
{
"type": 1,
"params": "4",
"error_handler": 2,
"error_handler_params": "5"
}
]
},
"id": 1
}
Risposta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"44211"
]
},
"id": 1
}
Aggiornamento di un prototipo di item script
Aggiorna un prototipo di item script con uno script diverso e rimuove i parametri non necessari che erano utilizzati dallo script precedente.
{
"jsonrpc": "2.0",
"method": "itemprototype.update",
"params": {
"itemid": "23865",
"parameters": [],
"script": "Zabbix.log(3, 'Log test');\nreturn 1;"
},
"id": 1
}
Risposta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"23865"
]
},
"id": 1
}
Fonte
CItemPrototype::update() in ui/include/classes/api/services/CItemPrototype.php.