itemprototype.create

Descripció

object itemprototype.create(object/array itemPrototypes)

Aquest mètode permet crear nous prototips d'elements.

Tenim aquest mètode disponible només per als usuaris Admin i Super admin. Els permisos per cridar el mètode es poden revocar a la configuració dels rols d'usuari. Per a més informació, veieu Rols d'usuari.

Paràmetres

(object/array) Prototip d'article a crear.

A més de les [propietats estàndard del prototip d'element] (object#item_prototype), el mètode admet els paràmetres següents.

Paràmetre Tipus Descripció
ruleid ID ID de la regla LLD a la qual pertany l'element

Comportament de la propietat:
- obligatori.
preprocessing array Opcions de preprocessament de prototip de l'element.
tags array Etiquetes del prototip d'element.

Valors de retorn

(object) Retorna un objecte amb els IDs dels prototips d'elements creats segons la propietat itemids. L'ordre dels IDs retornats correspon a l'ordre dels prototips d'elements donats.

Exemples

Crear un prototip d'element

Crear un prototip d'element per monitorar l'espai lliure de disc d'un sistema d'arxius descobert. Els elements trobats han de tindre els elements numèrics de l'agent de Zabbix actualitzats cada 30 segons.

Petició:

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

Resposta:

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

Crear un prototip d'elememt amb preprocessament

Crear un element emprant el canvi per segon i un multiplicador a mida com a segona passa.

Petició:

{
           "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"
                   }
               ]
           },
           "id": 1
       }
Copy
✔ Copied

Resposta:

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

Crear un prototipus d'element dependent

Crea un prototipus d'element dependent pel prototipus d'element principal amb l'ID 44211. Només són permeses les dependències del mateix equip (plantilla / regla de descoberta). Per tant, l'element principal i el dependent hauran de tindre els mateixos ID d'equip i de regla.

Petició:

{
           "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
       }
Copy
✔ Copied

Resposta:

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

Crear un prototiups d'element d'agent HTTP agent

Crear un prototip d'element amb una URL emprant una macro d'usuari, camps de cerca i capçaleres a mida.

Petició:

{
           "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
       }
Copy
✔ Copied

Resposta:

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

Crear un prototipus d'element d'script

Crear una col·lecció de dades simple emprant un prototipus d'element d'script.

Petició:

{
           "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"
           },
           "id": 2
       }
Copy
✔ Copied

Resposta:

{
           "jsonrpc": "2.0",
           "result": {
               "itemids": [
                   "23865"
               ]
           },
           "id": 3
       }
Copy
✔ Copied

Font

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

To toggle search highlight, press Ctrl+Alt+H
Have an improvement suggestion for this page? Select the text that could be improved and press Ctrl+Enter to send it to the editors.