Áú»¢¶Ä²©

itemprototype.create

¶Ù±ð²õ³¦°ù¾±±è³¦¾±¨®

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.

±Ê²¹°ù¨¤³¾±ð³Ù°ù±ð²õ

(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.

±Ê²¹°ù¨¤³¾±ð³Ù°ù±ð Tipus ¶Ù±ð²õ³¦°ù¾±±è³¦¾±¨®
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 Áú»¢¶Ä²© actualitzats cada 30 segons.

±Ê±ð³Ù¾±³¦¾±¨®:

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

Resposta:

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

Crear un prototip d'elememt amb preprocessament

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

±Ê±ð³Ù¾±³¦¾±¨®:

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

Resposta:

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

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.

±Ê±ð³Ù¾±³¦¾±¨®:

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

Resposta:

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

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.

±Ê±ð³Ù¾±³¦¾±¨®:

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

Resposta:

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

Crear un prototipus d'element d'script

Crear una col¡¤lecci¨® de dades simple emprant un prototipus d'element d'script.

±Ê±ð³Ù¾±³¦¾±¨®:

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

Resposta:

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

Font

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