Áú»¢¶Ä²©

Esta es una traducci¨®n de la p¨¢gina de documentaci¨®n original en espa?ol. Ay¨²danos a mejorarla.

discoveryrule.get

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

integer/array discoveryrule.get(object parameters)

El m¨¦todo permite recuperar reglas LLD de acuerdo con los par¨¢metros suministrados.

Este m¨¦todo est¨¢ disponible para usuarios de cualquier tipo. Los permisos para llamar al m¨¦todo se pueden revocar en la configuraci¨®n de roles de usuario. Ver Roles de usuario para m¨¢s informaci¨®n.

±Ê²¹°ù¨¢³¾±ð³Ù°ù´Ç²õ

(objeto) ±Ê²¹°ù¨¢³¾±ð³Ù°ù´Ç²õ que definen la salida deseada.

El m¨¦todo admite los siguientes par¨¢metros.

±Ê²¹°ù¨¢³¾±ð³Ù°ù´Ç Tipo ¶Ù±ð²õ³¦°ù¾±±è³¦¾±¨®²Ô
itemids ID/matriz Devuelve solo reglas LLD con los ID proporcionados.
groupids ID/matriz Devuelve solo reglas LLD que pertenecen a los equipos de los grupos dados.
hostids ID/matriz Devuelve solo reglas LLD que pertenecen a los equipos dados.
inherited booleano Si se establece en "true", devuelve solo reglas LLD heredadas de una plantilla.
interfaceids ID/matriz Devolver solo las reglas LLD utilizan las interfaces de equipo dadas.
monitored booleano Si se establece en "true", devolver¨¢ solo las reglas LLD habilitadas que pertenecen a equipos monitoreados.
templated booleano Si se establece en "true", devuelve solo reglas LLD que pertenecen a plantillas.
templateids ID/matriz Devuelve solo reglas LLD que pertenecen a las plantillas dadas.
selectFilter query Devuelve una propiedad filtro con datos del filtro utilizado por la regla LLD.
selectGraphs query Devuelve una propiedad graphs con prototipos de gr¨¢ficos que pertenecen a la regla LLD.

Admite count.
selectHostPrototypes query Devuelve una propiedad hostPrototypes con prototipos de equipo que pertenecen a la regla LLD.

Admite count.
selectHosts query Devuelve una propiedad hosts con una matriz de equipos a los que pertenece la regla LLD.
selectItems query Devuelve una propiedad items con prototipos de m¨¦tricas que pertenecen a la regla LLD.

Admite count.
selectTriggers query Devuelve una propiedad triggers con prototipos de iniciador que pertenecen a la regla LLD.

Admite count.
selectLLDMacroPaths query Devuelve una propiedad lld_macro_paths con una lista de macros LLD y rutas a los valores asignados a cada macro correspondiente.
selectPreprocessing query Devuelve una propiedad de preprocesamiento con opciones de preprocesamiento de reglas LLD.
selectOverrides query Devuelve una propiedad lld_rule_overrides con una lista de filtros, condiciones y operaciones de anulaci¨®n que se realizan en objetos prototipo.
filter objeto Devuelve s¨®lo aquellos resultados que coinciden exactamente con el filtro dado.

Acepta un objeto, donde las claves son nombres de propiedades y los valores son un valor ¨²nico o una matriz de valores con los que comparar.

No admite propiedades de tipo de datos text.

Admite propiedades adicionales:
host - nombre t¨¦cnico del equipo al que pertenece la regla LLD.
limitSelects entero Limita el n¨²mero de registros devueltos por las subselecciones.

Se aplica a las siguientes subselecciones: selectItems, selectGraphs, selectTriggers.
sortfield cadena/matriz Ordena el resultado por las propiedades dadas.

Valores posibles: itemid, name, key_, delay, type, status.
countOutput boolean Estos par¨¢metros, que son comunes para todos los m¨¦todos get, se describen en detalle en el comentario de referencia.
editable booleano
excludeSearch booleano
limit entero
output consulta
preservekeys booleano
search objeto
searchByAny booleano
searchWildcardsEnabled booleano
sortorder cadena/matriz
startSearch booleano

Valores de retorno

(entero/matriz) Devuelve:

  • una matriz de objetos;
  • el recuento de objetos recuperados, si el par¨¢metro countOutput ha sido usado.

Ejemplos

Recuperar reglas de descubrimiento de un equipo

Recupere todas las reglas de descubrimiento para una ID de equipo espec¨ªfica.

Solicitud:

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

Respuesta:

{
           "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": "",
                   "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": "",
                   "lifetime_type": "0",
                   "enabled_lifetime_type": "2",
                   "enabled_lifetime": "0",
                   "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": "",
                   "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": "",
                   "lifetime_type": "0",
                   "enabled_lifetime_type": "2",
                   "enabled_lifetime": "0",
                   "state": "0",
                   "error": "",
                   "parameters": []
               }
           ],
           "id": 1
       }

Recuperando condiciones de filtro

Recupere el nombre de la regla LLD "24681" y sus condiciones de filtro. El filtro utiliza el tipo de evaluaci¨®n "y", por lo que la propiedad formula esta vac¨ªa y eval_formula se genera autom¨¢ticamente.

Solicitud:

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

Respuesta:

{
           "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 and B and C and D"
                   }
               }
           ],
           "id": 1
       }

Recuperar regla LLD por URL

Recuperar regla LLD para equipo por valor del campo de regla URL. Solo se admite la coincidencia exacta de la cadena URL definida para la regla LLD.

Solicitud:

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

Respuesta:

{
           "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": "",
                   "url": "http://127.0.0.1/discoverer.php",
                   "query_fields": [
                       {
                           "name": "mode",
                           "value": "json"
                       },
                       {
                           "name": "elements",
                           "value": "2"
                       }
                   ],
                   "posts": "",
                   "status_codes": "200",
                   "follow_redirects": "1",
                   "post_type": "0",
                   "http_proxy": "",
                   "headers": [
                       {
                           "name" : "X-Type",
                           "value": "api"
                       },
                       {
                           "name": "Authorization",
                           "value": "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": "",
                   "lifetime_type": "0",
                   "enabled_lifetime_type": "2",
                   "enabled_lifetime": "0",
                   "state": "0",
                   "error": "",
                   "parameters": []
               }
           ],
           "id": 1
       }

Recuperar regla LLD con anulaciones

Recuperar una regla LLD que tenga varias configuraciones de anulaci¨®n.

Solicitud:

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

Respuesta:

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

Ver tambi¨¦n

Fuente

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