discoveryrule.update
Descripció
object discoveryrule.update(array lldRuleIds)
Aquest mètode permet actualitzar les regles LLD ja existents.
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.
Paràmetres
(object/array) Propietat de les regles de descobriment de baix nivell que cal actualitzar.
La propietat itemid s'ha d'establir per a cada regla, totes les altres propietats són opcionals. Només s'actualitzaran les propietats aprovades, totes les altres romandran sense canvis.
A més de les propietats de l'objecte regla estàndard de descoberta de baix nivell, el mètode accepta els paràmetres següents.
| Paràmetre | Tipus | Descripció |
|---|---|---|
| filtre | object | Filtre de regla LLD per anul·lar el filtre actual. |
| preprocessing | array | Opcions per a preprocessing Regles LLD per anul·lar les opcions de preprocessament actuals. Comportament de la propietat: - només lectura per objectes heretats |
| lld_macro_paths | object/array | Opcions lld_macro_path de la regla LLD. Comportament de la propietat: - només lectura per objectes heretats |
| overrides | object/array | Opcions override. Comportament de la propietat: - només lectura per objectes heretats |
Valors de retorn
(object) Torna un objecte que contingui els IDs de les regles LLD actualitzades sota la propietat itemids.
Exemples
Afegir un filtre a una regla de descoberta de baix nivell (LLD)
Afegir un filtre per tal que el contingut de la macro {#FSTYPE} coincideixi amb l'expressió regular \@File systems for discovery.
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "22450",
"filter": {
"evaltype": 1,
"conditions": [
{
"macro": "{#FSTYPE}",
"value": "@File systems for discovery"
}
]
}
},
"id": 1
}
Resposta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"22450"
]
},
"id": 1
}
Afegir camils de macro LLD
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "22450",
"lld_macro_paths": [
{
"lld_macro": "{#MACRO1}",
"path": "$.json.path"
}
]
},
"id": 1
}
Resposta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"22450"
]
},
"id": 1
}
Desactivar traps
Desactivar traps LLD d'una regla de descoberta.
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "28336",
"allow_traps": 0
},
"id": 1,
}
Resposta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"28336"
]
},
"id": 1
}
Actualitzar les opcions de preprocessament de regles LLD
Actualitzar una LLD amb una regla de preprocessament “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
}
Resposta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"44211"
]
},
"id": 1
}
Actualitzar un script de regla LLD
Actualitzar un script de regla LLD amb un script diferent i esborrar els paràmetres innecessaris que s'han emprat per l'script esborrat.
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "23865",
"parameters": [],
"script": "Zabbix.log(3, 'Log test');\nreturn 1;"
},
"id": 1
}
Resposta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"23865"
]
},
"id": 1
}
Actualitzar el temps de vida d'una regla LLD
Actualitza el temps de vida d'una regla LLD per desactivar les entitats no descobertes després de 12 hores i esborrarla després de 7 dies.
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "46864",
"lifetime_type": 0,
"lifetime": "7d",
"enabled_lifetime_type": 0,
"enabled_lifetime": "12h"
},
"id": 1
}
Resposta:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"46864"
]
},
"id": 1
}
Font
CDiscoveryRule::update() in ui/include/classes/api/services/CDiscoveryRule.php.