This is the documentation page for an unsupported version of Zabbix.
Is this not what you were looking for? Switch to the current version or choose one from the drop-down menu.

discoveryrule.get

Descripció

integer/array discoveryrule.get(object parameters)

El mètode permet recuperar regles LLD segons els paràmetres proveïts.

Aquest mètode és disponible per a usuaris de qualsevol mena. Els permisos per cridar al mètode es poden revocar a les configuracions de rols d'usuari. Per a més informació, veieu Rols d'usuari.

Paràmetres

(objecte) Paràmetres que defineixen la sortida esperada.

El mètode admet els paràmetres següents.

|Paràmetre|Tipus|Descripció| |---------|---------------------------------------- ------------|-----------| |itemids|string/array|Retorna només les regles amb els ID donats.| |groupids|string/array|Retorna només les regles que pertanyen als grups d'equips donats.| |hostids|string/array|Retorna només les regles que pertanyen als equips donats.| |inherited|boolean|Si s'estableix a true, només retorna les regles heretades d'un model.| |interfaceids|string/array|Retorna només regles emprant les interfícies d'equip donades.| |monitored|boolean|Si s'estableix a true, només es retornaran les regles actives que pertanyen als equips supervisats.| |templated|boolean|Si es defineix com a true, només es retornaran les regles que pertanyen a les plantilles.| |templateids|string/array|Retorna només les regles que pertanyen a les plantilles donades.| |selectFilter|query|Retorna el filtre emprat per la regla a la propietat filtre.| |selectGraphs|query|Retorna els prototips de gràfics que pertanyen a la regla a la propietat gràfics.

Admet count.| |selectHostPrototypes|query|Retorna els prototips d'equip que pertanyen a la regla a la propietat hostPrototypes.

Admet count.| |selectHosts|query|Retorna l'equip al que pertany la regla com a matriu a la propietat equips.| |selectItems|query|Retorna els prototips d'elements que pertanyen a la regla a la propietat elements.

Admet count.| |selectTriggers|query|Retorna els prototips de trigger que pertanyen a la regla a la propietat triggers.

Admet count.| |selectLLDMacroPaths|query|Retorna una propietat lld_macro_paths amb una llista de macros LLD i camins als valors assignats a cada macro corresponent.| |selectPreprocessing|query|Retorna una propietat de preprocessament amb les opcions de preprocessament de la regla LLD.| |selectOverrides|query|Retorna una propietat lld_rule_overrides amb una llista de filtres d'anul·lació, condicions i operacions realitzades en objectes prototip.| |filtre|objecte|Només retorna resultats que coincideixen exactament amb el filtre donat.

Accepta una matriu on les claus són noms de propietat i els valors són un valor únic o una matriu de valors per comparar.< br>
Admet filtres addicionals:
host - nom tècnic de l'equip al qual pertany la regla.| |limitSelects|enteger|Limita el nombre de registres retornats per subconsultes.

S'aplica a les subconsultes següents:
selctItems;
selectGraphs;
selectTriggers.| |sortfield|string/array|Ordena el resultat per les propietats donades.

Els valors possibles són: itemid, name, key_, delay, type i status.| |countOutput|boolean|Aquests paràmetres, comuns a tots els mètodes get, es descriuen als comentaris de referència.| |editable|boolean|^| |excludeSearch|boolean|^| |limit|integer|^| |output|query|^| |preservekeys|boolean|^| |search|object|^| |searchByAny|boolean|^| |searchWildcardsEnabled|boolean|^| |sortorder|string/array|^| |startSearch|boolean|^|

Valors de retorn

(integer/array) Retorna un d'entre:

  • una taula d'objectes;
  • el recompte d'objectes recuperats, si s'empra el paràmetre countOutput.

Exemples

Recuperant regles de descoberta d'un equip

recuperar totes les regles de descoberta per a un equip ID d'equip específic.

Petició:

{  "jsonrpc": "2.0",  "method": "discoveryrule.get",  "params": {  "output": "extend",  "hostids": "10202"  },  "id": 1 }

Resposta:

{  "jsonrpc": "2.0",  "result": [  {  "itemid": "27425",  "type": "0",  "snmp_oid": "",  "hostid": "10202",  "name": "Network interface discovery",  "key_": "net.if.discovery",  "delay": "1h",  "status": "0",  "trapper_hosts": "",  "templateid": "22444",  "valuemapid": "0",  "params": "",  "ipmi_sensor": "",  "authtype": "0",  "username": "",  "password": "",  "publickey": "",  "privatekey": "",  "interfaceid": "119",  "description": "Discovery of network interfaces as defined in global regular expression \"Network interfaces for discovery\".",  "lifetime": "30d",  "jmx_endpoint": "",  "master_itemid": "0",  "timeout": "3s",  "url": "",  "query_fields": [],  "posts": "",  "status_codes": "200",  "follow_redirects": "1",  "post_type": "0",  "http_proxy": "",  "headers": [],  "retrieve_mode": "0",  "request_method": "0",  "ssl_cert_file": "",  "ssl_key_file": "",  "ssl_key_password": "",  "verify_peer": "0",  "verify_host": "0",  "allow_traps": "0",  "uuid": "",  "state": "0",  "error": "",  "parameters": []  },  {  "itemid": "27426",  "type": "0",  "snmp_oid": "",  "hostid": "10202",  "name": "Mounted filesystem discovery",  "key_": "vfs.fs.discovery",  "delay": "1h",  "status": "0",  "trapper_hosts": "",  "templateid": "22450",  "valuemapid": "0",  "params": "",  "ipmi_sensor": "",  "authtype": "0",  "username": "",  "password": "",  "publickey": "",  "privatekey": "",  "interfaceid": "119",  "description": "Discovery of file systems of different types as defined in global regular expression \"File systems for discovery\".",  "lifetime": "30d",  "jmx_endpoint": "",  "master_itemid": "0",  "timeout": "3s",  "url": "",  "query_fields": [],  "posts": "",  "status_codes": "200",  "follow_redirects": "1",  "post_type": "0",  "http_proxy": "",  "headers": [],  "retrieve_mode": "0",  "request_method": "0",  "ssl_cert_file": "",  "ssl_key_file": "",  "ssl_key_password": "",  "verify_peer": "0",  "verify_host": "0",  "allow_traps": "0",  "uuid": "",  "state": "0",  "error": "",  "parameters": []  }  ],  "id": 1 }

Recuperant condicions de filtres

Recuperar el nom de la regla LLD "24681" i les seves condicions de filtratge. El filtre empra el tipus d'avaluació "i", pel que la propietat formula és buida i la propietat eval_formula es genera automàticament.

Petició:

{  "jsonrpc": "2.0",  "method": "discoveryrule.get",  "params": {  "output": ["name"],  "selectFilter": "extend",  "itemids": ["24681"]  },  "id": 1 }

Resposta:

{  "jsonrpc": "2.0",  "result": [  {  "itemid": "24681",  "name": "Filtered LLD rule",  "filter": {  "evaltype": "1",  "formula": "",  "conditions": [  {  "macro": "{#MACRO1}",  "value": "@regex1",  "operator": "8",  "formulaid": "A"  },  {  "macro": "{#MACRO2}",  "value": "@regex2",  "operator": "9",  "formulaid": "B"  },  {  "macro": "{#MACRO3}",  "value": "",  "operator": "12",  "formulaid": "C"  },  {  "macro": "{#MACRO4}",  "value": "",  "operator": "13",  "formulaid": "D"  }  ],  "eval_formula": "A i B i C i D"  }  }  ],  "id": 1 }

Recuperar regla LLD per URL

Recupera la regla LLD per a un equip segons el valor del camp URL de la regla. Només la correspondència exacta de la cadena URL definida per la regla és suportada.

Petició:

{  "jsonrpc": "2.0",  "method": "discoveryrule.get",  "params": {  "hostids": "10257",  "filter": {  "type": 19,  "url": "http://127.0.0.1/discoverer.php"  }  },  "id": 39, }

Resposta:

{  "jsonrpc": "2.0",  "result": [  {  "itemid": "28336",  "type": "19",  "snmp_oid": "",  "hostid": "10257",  "name": "API HTTP agent",  "key_": "api_discovery_rule",  "delay": "5s",  "status": "0",  "trapper_hosts": "",  "templateid": "0",  "valuemapid": "0",  "params": "",  "ipmi_sensor": "",  "authtype": "0",  "username": "",  "password": "",  "publickey": "",  "privatekey": "",  "interfaceid": "5",  "description": "",  "lifetime": "30d",  "jmx_endpoint": "",  "master_itemid": "0",  "timeout": "3s",  "url": "http://127.0.0.1/discoverer.php",  "query_fields": [  {  "mode": "json"  },  {  "elements": "2"  }  ],  "posts": "",  "status_codes": "200",  "follow_redirects": "1",  "post_type": "0",  "http_proxy": "",  "headers": {  "X-Type": "api",  "Authorization": "Bearer mF_A.B5f-2.1JcM"  },  "retrieve_mode": "0",  "request_method": "1",  "ssl_cert_file": "",  "ssl_key_file": "",  "ssl_key_password": "",  "verify_peer": "0",  "verify_host": "0",  "allow_traps": "0",  "uuid": "",  "state": "0",  "error": "",  "parameters": []  }  ],  "id": 39 }

Recuperar cadena LLD amb reemplaçaments

Recupera una regla LLD que té diferents paràmetres de reemplaçament.

Petició:

{  "jsonrpc": "2.0",  "method": "discoveryrule.get",  "params": {  "output": ["name"],  "itemids": "30980",  "selectOverrides": ["name", "step", "stop", "filter", "operations"]  },  "id": 39, }

Resposta:

{  "jsonrpc": "2.0",  "result": [  {  "name": "Discover database host",  "overrides": [  {  "name": "Discover MySQL host",  "step": "1",  "stop": "1",  "filter": {  "evaltype": "2",  "formula": "",  "conditions": [  {  "macro": "{#UNIT.NAME}",  "operator": "8",  "value": "^mysqld\\.service$",  "formulaid": "A"  },  {  "macro": "{#UNIT.NAME}",  "operator": "8",  "value": "^mariadb\\.service$",  "formulaid": "B"  }  ],  "eval_formula": "A or B"  },  "operations": [  {  "operationobject": "3",  "operator": "2",  "value": "Database host",  "opstatus": {  "status": "0"  },  "optag": [  {  "tag": "Database",  "value": "MySQL"  }  ],  "optemplate": [  {  "templateid": "10170"  }  ]  }  ]  },  {  "name": "Discover PostgreSQL host",  "step": "2",  "stop": "1",  "filter": {  "evaltype": "0",  "formula": "",  "conditions": [  {  "macro": "{#UNIT.NAME}",  "operator": "8",  "value": "^postgresql\\.service$",  "formulaid": "A"  }  ],  "eval_formula": "A"  },  "operations": [  {  "operationobject": "3",  "operator": "2",  "value": "Database host",  "opstatus": {  "status": "0"  },  "optag": [  {  "tag": "Database",  "value": "PostgreSQL"  }  ],  "optemplate": [  {  "templateid": "10263"  }  ]  }  ]  }  ]  }  ],  "id": 39 }

Veieu també

Font

CDiscoveryRule::get() in ui/include/classes/api/services/CDiscoveryRule.php.