object itemprototype.create(object/array itemPrototypes)
Deze methode maakt het mogelijk om nieuwe itemprototypes te maken.
Deze methode is alleen beschikbaar voor gebruikerstypes Admin en Superadmin. Rechten om de methode aan te roepen kunnen worden ingetrokken in de instellingen van gebruikersrollen. Zie Gebruikersrollen voor meer informatie.
(object/array)
Item prototype om te creëren.
Naast de standaard item prototype eigenschappen, accepteert deze methode de volgende parameters.
Parameter | Type | Beschrijving |
---|---|---|
ruleid | string | ID van de LLD-regel waartoe het item prototype behoort. Parameter gedrag: - vereist |
preprocessing | array | Item prototype voorverwerkings opties. |
tags | array | Item 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.
Creëer een item prototype om de vrije schijfruimte op een ontdekt bestandssysteem te bewaken. Ontdekte items moeten numerieke Zabbix-agent items zijn die elke 30 seconden worden bijgewerkt.
{
"jsonrpc": "2.0",
"method": "itemprototype.create",
"params": {
"name": "Vrije schijfruimte op {#FSNAME}",
"key_": "vfs.fs.size[{#FSNAME},free]",
"hostid": "10197",
"ruleid": "27665",
"type": 0,
"value_type": 3,
"interfaceid": "112",
"delay": "30s"
},
"id": 1
}
Reactie:
Creëer een item met "verandering per seconde" en een aangepaste vermenigvuldiger als tweede stap.
{
"jsonrpc": "2.0",
"method": "itemprototype.create",
"params": {
"name": "Inkomend netwerkverkeer op {#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"
}
]
},
"id": 1
}
Reactie:
Creëer een afhankelijk item prototype voor een master item prototype met ID 44211. Alleen afhankelijkheden op hetzelfde host (template/discovery rule) zijn toegestaan, daarom moeten het master- en afhankelijke item hetzelfde hostid en ruleid hebben.
{
"jsonrpc": "2.0",
"method": "itemprototype.create",
"params": {
"hostid": "10001",
"ruleid": "27665",
"name": "Afhankelijk test item prototype",
"key_": "dependent.prototype",
"type": 18,
"master_itemid": "44211",
"value_type": 3
},
"id": 1
}
Reactie:
Maak een item prototype met een URL met behulp van een gebruikersmacro, queryvelden en aangepaste headers.
{
"jsonrpc": "2.0",
"method": "itemprototype.create",
"params": {
"type": "19",
"hostid": "10254",
"ruleid": "28256",
"interfaceid": "2",
"name": "api item prototype voorbeeld",
"key_": "api_http_item",
"value_type": 3,
"url": "{$URL_PROTOTYPE}",
"query_fields": [
{
"min": "10"
},
{
"max": "100"
}
],
"headers": {
"X-Source": "api"
},
"delay": "35"
},
"id": 1
}
Reactie:
Maak een eenvoudige gegevensverzameling met behulp van een script item prototype.
{
"jsonrpc": "2.0",
"method": "itemprototype.create",
"params": {
"name": "Script voorbeeld",
"key_": "custom.script.itemprototype",
"hostid": "12345",
"type": 21,
"value_type": 4,
"params": "var request = new HttpRequest();\nreturn request.post(\"https://postman-echo.com/post\", JSON.parse(value));",
"parameters": [
{
"name": "host",
"value": "{HOST.CONN}"
}
],
"timeout": "6s",
"delay": "30s"
},
"id": 1
}
Reactie:
CItemPrototype::create() in ui/include/classes/api/services/CItemPrototype.php.