itemprototype.create

Apraksts

object itemprototype.create(object/array itemPrototypes)

Šī metode ļauj izveidot jaunus vienumu prototipus.

Šī metode ir pieejama tikai Admin un Super admin lietotāju tipiem. Atļaujas izsaukt šo metodi var tikt atsauktas lietotāja lomas iestatījumos. Plašāku informāciju skatiet Lietotāju lomas.

Parametri

(object/array) Izveidojamais vienuma prototips.

Papildus standarta vienuma prototipa īpašībām metode pieņem šādus parametrus.

Parametrs Tips Apraksts
ruleid ID LLD kārtulas ID, kurai pieder vienuma prototips.

Parametra darbība:
- obligāts
preprocessing array Vienuma prototipa priekšapstrādes opcijas.
tags array Vienuma prototipa birkas.

Atgrieztās vērtības

(object) Atgriež objektu, kas satur izveidoto vienumu prototipu ID īpašībā itemids. Atgriezto ID secība atbilst nodoto vienumu prototipu secībai.

Piemēri

Vienuma prototipa izveide

Izveidojiet vienuma prototipu, lai uzraudzītu brīvo diska vietu atklātajā failu sistēmā. Atklātajiem vienumiem jābūt skaitliskiem Zabbix aģenta vienumiem, kas tiek atjaunināti ik pēc 30 sekundēm.

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.create",
    "params": {
        "name": "Brīvā diska vieta uz {#FSNAME}",
        "key_": "vfs.fs.size[{#FSNAME},free]",
        "hostid": "10197",
        "ruleid": "27665",
        "type": 0,
        "value_type": 3,
        "interfaceid": "112",
        "delay": "30s"
    },
    "id": 1
}

Atbilde:

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

Vienuma prototipa izveide ar priekšapstrādi

Izveidojiet vienumu, izmantojot izmaiņas sekundē un pielāgotu reizinātāju kā otro soli.

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.create",
    "params": {
        "name": "Ienākošā tīkla datplūsma uz {#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
}

Atbilde:

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

Atkarīgā vienuma prototipa izveide

Izveidojiet atkarīgā vienuma prototipu galvenā vienuma prototipam ar ID 44211. Ir atļautas tikai atkarības uz tā paša hosta (veidnes/atklāšanas kārtulas), tādēļ galvenajam un atkarīgajam vienumam jābūt vienādam hostid un ruleid.

Pieprasījums:

{
    "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
    },
    "id": 1
}

Atbilde:

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

Izveidot HTTP aģenta vienuma prototipu

Izveidojiet vienuma prototipu ar URL, izmantojot lietotāja makrosu, vaicājuma laukus un pielāgotas galvenes.

Pieprasījums:

{
    "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": [
            {
                "name": "min",
                "value": "10"
            },
            {
                "name": "max",
                "value" "100"
            }
        ],
        "headers": [
            {
                "name": "X-Source",
                "value": "api"
            }
        ],
        "delay": "35"
    },
    "id": 1
}

Atbilde:

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

Izveidot skripta vienuma prototipu

Izveidojiet vienkāršu datu vākšanu, izmantojot skripta vienuma prototipu.

Pieprasījums:

{
    "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 HttpRequest();\nreturn request.post(\"https://postman-echo.com/post\", JSON.parse(value));",
        "parameters": [
            {
                "name": "host",
                "value": "{HOST.CONN}"
            }
        ],
        "timeout": "6s",
        "delay": "30s"
    },
    "id": 1
}

Atbilde:

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

Avots

CItemPrototype::create() failā ui/include/classes/api/services/CItemPrototype.php.