object itemprototype.create(object/array itemPrototypes)
Deze methode maakt het mogelijk om nieuwe item-prototypes te maken.
Deze methode is alleen beschikbaar voor Admin en Super admin gebruikers typen. Machtigingen om de methode aan te roepen kunnen worden ingetrokken in de gebruikersrol instellingen. Zie Gebruiker rollen voor meer informatie.
(object/array)
Item prototype om te maken.
Aanvullend op het prototype standaarditem eigenschappen, accepteert de methode het volgende: parameters.
Parameter | Type | Beschrijving |
---|---|---|
regel (verplicht) |
string | ID van de LLD-regel waartoe het item behoort. |
preprocessing | array | Item prototype preprocessing opties. |
tags | array | Artikel prototype tags. |
(object)
Retourneert een object dat de ID's van het gemaakte item bevat prototypes onder de eigenschap itemids
. De volgorde van de geretourneerde ID's komt overeen met de volgorde van de doorgegeven item-prototypes.
Maak een item-prototype om de vrije schijfruimte op een ontdekt bestandssysteem te bewaken. Ontdekte items moeten numerieke Zabbix-agentitems zijn die elke 30 seconden worden bijgewerkt.
Aanvraag:
{
"jsonrpc": "2.0",
"method": "itemprototype.create",
"params": {
"name": "Free disk space on {#FSNAME}",
"key_": "vfs.fs.size[{#FSNAME},free]",
"hostid": "10197",
"ruleid": "27665",
"type": 0,
"value_type": 3,
"interfaceid": "112",
"delay": "30s"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Antwoord:
Maak een item met wijziging per seconde en een aangepaste vermenigvuldiger als een tweede stap.
Verzoek:
{
"jsonrpc": "2.0",
"method": "itemprototype.create",
"params": {
"name": "Incoming network traffic on {#IFNAME}",
"key_": "net.if.in[{#IFNAME}]",
"hostid": "10001",
"ruleid": "27665",
"type": 0,
"value_type": 3,
"delay": "60s",
"units": "bps",
"interfaceid": "1155",
"preprocessing": [
{
"type": 10,
"params": "",
"error_handler": 0,
"error_handler_params": ""
},
{
"type": 1,
"params": "8",
"error_handler": 2,
"error_handler_params": "10"
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Antwoord:
Maak een prototype van een afhankelijk artikel voor een prototype van een hoofdartikel met ID 44211. Alleen afhankelijkheden van dezelfde host (sjabloon/ontdekkingsregel) zijn toegestaan, daarom moeten Master en Dependent item dezelfde hostid en ruleid hebben.
Verzoek:
{
"jsonrpc": "2.0",
"method": "itemprototype.create",
"params": {
"hostid": "10001",
"ruleid": "27665",
"name": "Dependent test item prototype",
"key_": "dependent.prototype",
"type": 18,
"master_itemid": "44211",
"value_type": 3
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Antwoord:
Maak een itemprototype met URL met behulp van gebruikersmacro, queryvelden en aangepast koppen.
Verzoek:
{
"jsonrpc": "2.0",
"method": "itemprototype.create",
"params": {
"type": "19",
"hostid": "10254",
"ruleid": "28256",
"interfaceid": "2",
"name": "api item prototype example",
"key_": "api_http_item",
"value_type": 3,
"url": "{$URL_PROTOTYPE}",
"query_fields": [
{
"min": "10"
},
{
"max": "100"
}
],
"headers": {
"X-Source": "api"
},
"delay": "35"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Antwoord:
Maak een eenvoudige gegevensverzameling met behulp van een scriptitem.
Verzoek:
{
"jsonrpc": "2.0",
"method": "itemprototype.create",
"params": {
"name": "Script example",
"key_": "custom.script.itemprototype",
"hostid": "12345",
"type": 21,
"value_type": 4,
"params": "var request = new CurlHttpRequest();\nreturn request.Post(\"https://postman-echo.com/post\", JSON.parse(value));",
"parameters": [
{
"name": "host",
"value": "{HOST.CONN}"
}
],
"timeout": "6s",
"delay": "30s"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 2
}
Antwoord:
CItemPrototype::create() in ui/include/classes/api/services/CItemPrototype.php.