item.create

Опис

object item.create(object/array items)

`Овај метод омогућава креирање нових ставки.

::: noteclassic Веб ставке се не могу креирати преко Zabbix API-ја.

Ова метода је доступна само Админ и * Супер администратор* типовима корисника. Дозволе за позивање методе могу се опозвати у подешавањима улога корисника. Погледајте Улоге корисника за више информација.

Параметри

(object/array) Ставке за креирање.

Поред стандардних својстава ставке, метод прихвата следеће параметре.

Parameter Type Description
preprocessing array Претходна обрада ставке опције.
tags array Ознаке ставки.

Повратне вредности

(object) Враћа објекат који садржи ID-ијеве креираних ставки у оквиру својства items. Редослед враћених ID-ијева одговара редоследу прослеђених ставки.

Примери

Креирање ставке

Креирајте нумеричку ставку Zabbix агента са 2 ознаке ставки за надгледање слободног простора на диску на домаћину са ID-ијем "30074".

Request:

{
            "jsonrpc": "2.0",
            "method": "item.create",
            "params": {
            "name": "Free disk space on /home/joe/",
            "key_": "vfs.fs.size[/home/joe/,free]",
            "hostid": "30074",
            "type": 0,
            "value_type": 3,
            "interfaceid": "30084",
            "tags": [
            {
            "tag": "component",
            "value": "storage"
            },
            {
            "tag": "equipment",
            "value": "workstation"
            }
            ],
            "delay": "30s"
            },
            "id": 1
       }

Одговор:

{
            "jsonrpc": "2.0",
            "result": {
            "itemids": [
            "24758"
            ]
            },
            "id": 1
       }

Креирање ставке инвентара домаћина

Направите ставку Zabbix агента да бисте попунили поље инвентара „ OS“ домаћина.

Request:

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

Одговор:

{
            "jsonrpc": "2.0",
            "result": {
            "itemids": [
            "24759"
            ]
            },
            "id": 1
       }

Креирање ставке са претходном обрадом

Направите ставку користећи прилагођени множилац.

Request:

{
            "jsonrpc": "2.0",
            "method": "item.create",
            "params": {
            "name": "Device 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
       }

Одговор:

{
            "jsonrpc": "2.0",
            "result": {
            "itemids": [
            "44210"
            ]
            },
            "id": 1
       }

Креирање зависне ставке

Креирајте зависну ставку за главну ставку са ID-ијем 24759. Дозвољене су само зависности од истог домаћина, стога мастер и зависна ставка треба да имају исти hostid.

Request:

{
            "jsonrpc": "2.0",
            "method": "item.create",
            "params": {
            "hostid": "30074",
            "name": "Dependent test item",
            "key_": "dependent.item",
            "type": 18,
            "master_itemid": "24759",
            "value_type": 2
            },
            "id": 1
       }

Одговор:

{
            "jsonrpc": "2.0",
            "result": {
            "itemids": [
            "44211"
            ]
            },
            "id": 1
       }

Креирајте ставку HTTP агента

Креирајте ставку метода POST захтева уз претходну обраду JSON одговора.

Request:

{
            "jsonrpc": "2.0",
            "method": "item.create",
            "params": {
            "url":"http://127.0.0.1/http.php",
            "query_fields": [
            {
            "name": "mode",
            "value": "json"
            },
            {
            "name": "min",
            "value": "10"
            },
            {
            "name": "max",
            "value": "100"
            }
            ],
            "interfaceid": "1",
            "type": 19,
            "hostid": "10254",
            "delay": "5s",
            "key_": "json",
            "name": "HTTP agent example JSON",
            "value_type": 0,
            "output_format": 1,
            "preprocessing": [
            {
            "type": 12,
            "params": "$.random",
            "error_handler": 0,
            "error_handler_params": ""
            }
            ]
            },
            "id": 1
       }

Одговор:

{
            "jsonrpc": "2.0",
            "result": {
            "itemids": [
            "23865"
            ]
            },
            "id": 1
       }

Креирајте ставку скрипте

Направите једноставно прикупљање података помоћу ставке скрипте.

Request:

{
            "jsonrpc": "2.0",
            "method": "item.create",
            "params": {
            "name": "Script example",
            "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
       }

Одговор:

{
            "jsonrpc": "2.0",
            "result": {
            "itemids": [
            "23865"
            ]
            },
            "id": 1
       }

Извор

CItem::create() in ui/include/classes/api/services/CItem.php.