item.create
Beschrijving
object item.create(object/array items)
Deze methode maakt het mogelijk om nieuwe items te maken.
Webitems kunnen niet worden gemaakt via de Zabbix API.
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.
Parameters
(object/array) Items die moeten worden gemaakt.
Naast de standaard itemeigenschappen, is de methode accepteert de volgende parameters.
| Parameter | Type | Beschrijving |
|---|---|---|
| preprocessing | array | Item preprocessing opties. |
| tags | array | Item tags. |
Retourwaarden
(object) Retourneert een object dat de ID's van de gemaakte items bevat
onder de eigenschap 'itemids'. De volgorde van de geretourneerde ID's komt overeen met de
volgorde van de doorgegeven items.
Voorbeelden
Een item aanmaken
Maak een numeriek Zabbix-agent-item met 2 itemtags om de vrije schijfruimte op host met ID "30074" te monitoren.
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"name": "Vrije schijfruimte op /home/joe/",
"key_": "vfs.fs.size[/home/joe/,free]",
"hostid": "30074",
"type": 0,
"value_type": 3,
"interfaceid": "30084",
"tags": [
{
"tag": "Schijfgebruik"
},
{
"tag": "Apparatuur",
"value": "Werkstation"
}
],
"delay": "30s"
},
"id": 1
}
Antwoord:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"24758"
]
},
"id": 1
}
Een hostinventarisitem aanmaken
Maak een Zabbix-agent-item aan om het "OS"-inventarisveld van de host te vullen.
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"name": "uname",
"key_": "system.uname",
"hostid": "30021",
"type": 0,
"interfaceid": "30007",
"value_type": 1,
"delay": "10s",
"inventory_link": 5
},
"id": 1
}
Antwoord:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"24759"
]
},
"id": 1
}
Een item met voorverwerking aanmaken
Maak een item aan met aangepaste vermenigvuldiger.
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"name": "Apparaat uptime",
"key_": "sysUpTime",
"hostid": "11312",
"type": 4,
"snmp_oid": "SNMPv2-MIB::sysUpTime.0",
"value_type": 1,
"delay": "60s",
"units": "uptime",
"interfaceid": "1156",
"preprocessing": [
{
"type": 1,
"params": "0.01",
"error_handler": 1,
"error_handler_params": ""
}
]
},
"id": 1
}
Antwoord:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"44210"
]
},
"id": 1
}
Een afhankelijk item aanmaken
Maak een afhankelijk item aan voor het hoofditem met ID 24759. Alleen afhankelijkheden op dezelfde host zijn toegestaan, daarom moeten het hoofditem en het afhankelijke item dezelfde hostid hebben.
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"hostid": "30074",
"name": "Afhankelijk testitem",
"key_": "afhankelijk.item",
"type": 18,
"master_itemid": "24759",
"value_type": 2
},
"id": 1
}
Antwoord:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"44211"
]
},
"id": 1
}
HTTP-agentitem aanmaken
Maak een item aan met de POST-verzoekmethode met JSON-responsoorverwerking.
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"url":"http://127.0.0.1/http.php",
"query_fields": [
{
"mode":"json"
},
{
"min": "10"
},
{
"max": "100"
}
],
"interfaceid": "1",
"type": 19,
"hostid": "10254",
"delay": "5s",
"key_": "json",
"name": "Voorbeeld HTTP-agent JSON",
"value_type": 0,
"output_format": 1,
"preprocessing": [
{
"type": 12,
"params": "$.random",
"error_handler": 0,
"error_handler_params": ""
}
]
},
"id": 1
}
Antwoord:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"23865"
]
},
"id": 1
}
Script-item aanmaken
Maak een eenvoudige gegevensverzameling aan met behulp van een script-item.
{
"jsonrpc": "2.0",
"method": "item.create",
"params": {
"name": "Script-voorbeeld",
"key_": "custom.script.item",
"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
}
Antwoord:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"23865"
]
},
"id": 1
}
Bron
CItem::create() in ui/include/classes/api/services/CItem.php.