Se encuentra viendo la documentación de la versión en desarrollo, puede estar incompleta.
Esta página fue traducida automáticamente. Si detectas un error, selecciónalo y presiona Ctrl+Enter para informarlo a los editores.

discoveryrule.get

Descripción

integer/array discoveryrule.get(parámetros del objeto)

El método permite recuperar reglas LLD según los parámetros dados.

Este método está disponible para usuarios de cualquier tipo. Los permisos para llamar al método pueden ser revocados en la configuración del rol de usuario. Consulte Roles de usuario para obtener más información.

Parámetros

(objeto) Parámetros que definen la salida deseada.

El método admite los siguientes parámetros.

Parámetro Tipo Descripción
itemids ID/array Devolver solo las reglas LLD con los IDs indicados.
groupids ID/array Devolver solo las reglas LLD que pertenezcan a los equipos de los grupos indicados.
hostids ID/array Devolver solo las reglas LLD que pertenezcan a los equipos indicados.
inherited booleano Si se establece en true, devolver solo las reglas LLD heredadas de una plantilla.
interfaceids ID/array Devolver solo las reglas LLD que utilicen las interfaces de equipo indicadas.
monitored booleano Si se establece en true, devolver solo las reglas LLD habilitadas que pertenezcan a equipos monitorizados.
templated booleano Si se establece en true, devolver solo las reglas LLD que pertenezcan a plantillas.
templateids ID/array Devolver solo las reglas LLD que pertenezcan a las plantillas indicadas.
selectDiscoveryData consulta Devolver una propiedad discoveryData con los datos del objeto de descubrimiento de la regla LLD. El objeto de descubrimiento de la regla LLD vincula una regla LLD descubierta con una regla LLD prototipo de la que fue descubierta.
selectDiscoveryRulePrototypes consulta Devolver una propiedad discoveryRulePrototypes con los prototipos de reglas LLD que pertenecen a la regla LLD.

Soporta count.
selectFilter consulta Devolver una propiedad filter con los datos del filtro utilizado por la regla LLD.
selectGraphs consulta Devolver una propiedad graphs con los prototipos de gráficos que pertenecen a la regla LLD.

Soporta count.
selectHostPrototypes consulta Devolver una propiedad hostPrototypes con los prototipos de equipos que pertenecen a la regla LLD.

Soporta count.
selectHosts consulta Devolver una propiedad hosts con un array de equipos a los que pertenece la regla LLD.
selectItems consulta Devolver una propiedad items con los prototipos de métricas que pertenecen a la regla LLD.

Soporta count.
selectTriggers consulta Devolver una propiedad triggers con los prototipos de disparadores que pertenecen a la regla LLD.

Soporta count.
selectLLDMacroPaths consulta Devolver una propiedad lld_macro_paths con una lista de macros LLD y rutas a los valores asignados a cada macro correspondiente.
selectPreprocessing consulta Devolver una propiedad preprocessing con las opciones de preprocesamiento de la regla LLD.
selectOverrides consulta Devolver una propiedad lld_rule_overrides con una lista de filtros de sobrescritura, condiciones y operaciones que se realizan sobre los objetos prototipo.
filter objeto Devolver solo aquellos resultados que coincidan exactamente con el filtro dado.

Acepta un objeto, donde las claves son nombres de propiedades y los valores son un único valor o un array de valores con los que comparar.

No admite propiedades de tipo de dato text data type.

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

Se aplica a las siguientes subconsultas: selectItems, selectGraphs, selectTriggers.
sortfield string/array Ordenar el resultado por las propiedades indicadas.

Valores posibles: itemid, name, key_, delay, type, status.
countOutput booleano Estos parámetros se describen en el comentario de referencia.
editable booleano
excludeSearch booleano
limit entero
output consulta
preservekeys booleano
search objeto
searchByAny booleano
searchWildcardsEnabled booleano
sortorder string/array
startSearch booleano

Valores de retorno

(integer/array) Devuelve:

  • un array de objetos;
  • el número de objetos recuperados, si se ha utilizado el parámetro countOutput.

Ejemplos

Recuperar reglas de descubrimiento de un equipo

Recupera todas las reglas de descubrimiento para un ID de equipo específico.

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": "",
                   "flags": "1",
                   "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": "",
                   "flags": "1",
                   "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 "and", por lo que la propiedad formula está 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 la regla LLD para el equipo por el valor del campo URL de la regla. 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": "",
                   "flags": "1",
                   "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 sobrescrituras

Recuperar una regla LLD que tiene varias configuraciones de sobrescritura.

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": "Descubrir equipo de base de datos",
                   "overrides": [
                       {
                           "name": "Descubrir equipo MySQL",
                           "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": "Equipo de base de datos",
                                   "opstatus": {
                                       "status": "0"
                                   },
                                   "optag": [
                                       {
                                           "tag": "database",
                                           "value": "mysql"
                                       }
                                   ],
                                   "optemplate": [
                                       {
                                           "templateid": "10170"
                                       }
                                   ]
                               }
                           ]
                       },
                       {
                           "name": "Descubrir equipo PostgreSQL",
                           "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": "Equipo de base de datos",
                                   "opstatus": {
                                       "status": "0"
                                   },
                                   "optag": [
                                       {
                                           "tag": "database",
                                           "value": "postgresql"
                                       }
                                   ],
                                   "optemplate": [
                                       {
                                           "templateid": "10263"
                                       }
                                   ]
                               }
                           ]
                       }
                   ]
               }
           ],
           "id": 1
       }

Véase también

Fuente

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