discoveryrule.update
Descripción
object discoveryrule.update(object/array lldRules)
Este método permite actualizar las reglas LLD existentes.
Este método solo está disponible para los tipos de usuario Administrador y Superadministrador. Los permisos para llamar al método se pueden revocar en la configuración del rol de usuario. Ver Roles de usuario para más información.
Parámetros
(object/array) Propiedades de la regla LLD que se actualizarán.
La propiedad itemid debe estar definida para cada regla LLD, todas las demás propiedades son opcionales. Sólo se actualizarán las propiedades pasadas, todas las demás permanecerán sin cambios.
Además de las propiedades estándar de la regla LLD, el método acepta los siguientes parámetros.
| Parámetro | Tipo | Descripción |
|---|---|---|
| filter | object | Filtro de regla LLD para reemplazar el filtro existente. |
| preprocessing | object/array | Opciones de preprocesamiento de la regla LLD para reemplazar las opciones de preprocesamiento existentes. Comportamiento del parámetro: - sólo lectura para objetos heredados |
| lld_macro_paths | object/array | Opciones de lld_macro_path de la regla LLD para reemplazar las opciones de lld_macro_path existentes. Comportamiento del parámetro: - sólo lectura para objetos heredados |
| overrides | object/array | Opciones de overrides de la regla LLD para reemplazar las opciones de overrides existentes. Comportamiento del parámetro: - sólo lectura para objetos heredados |
Valores de retorno
(objeto) Devuelve un objeto que contiene los ID de las reglas LLD actualizadas
bajo la propiedad "itemids".
Ejemplos
Agregar un filtro a una regla LLD
Agregue un filtro para que el contenido de la macro {#FSTYPE} coincida la expresión regular \@Sistemas de archivos para descubrimiento.
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "22450",
"filter": {
"evaltype": 1,
"conditions": [
{
"macro": "{#FSTYPE}",
"value": "@Sistemas de archivos para descubrimiento"
}
]
}
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"22450"
]
},
"id": 1
}
Agregar rutas de macro LLD
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "22450",
"lld_macro_paths": [
{
"lld_macro": "{#MACRO1}",
"path": "$.json.path"
}
]
},
"id": 1
}
Response:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"22450"
]
},
"id": 1
}
Desactivar captura
Deshabilite la captura de LLD para la regla de descubrimiento.
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "28336",
"allow_traps": 0
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"28336"
]
},
"id": 1
}
Actualización de las opciones de preprocesamiento de reglas LLD
Actualice una regla LLD con la regla de preprocesamiento "JSONPath".
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "44211",
"preprocessing": [
{
"type": 12,
"params": "$.path.to.json",
"error_handler": 2,
"error_handler_params": "5"
}
]
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"44211"
]
},
"id": 1
}
Actualización del script de regla LLD
Actualice una secuencia de comandos de regla LLD con una secuencia de comandos diferente y elimine las innecesarias. parámetros que fueron utilizados por el script anterior.
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "23865",
"parameters": [],
"script": "Zabbix.log(3, 'Log test');\nreturn 1;"
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"23865"
]
},
"id": 1
}
Actualización de la duración de la regla LLD
Actualice la regla LLD para deshabilitar la entidad que ya no se descubre después de 12 horas y eliminarla después de 7 días.
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "46864",
"lifetime_type": 0,
"lifetime": "7d",
"enabled_lifetime_type": 0,
"enabled_lifetime": "12h"
},
"id": 1
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"46864"
]
},
"id": 1
}
Fuente
CDiscoveryRule::update() en ui/include/classes/api/services/CDiscoveryRule.php.