object discoveryrule.update(object/array lldRules)
Овај метод омогућава ажурирање постојећих LLD правила.
Ова метода је доступна само типовима корисника Администратор и Супер администратор. Дозволе за позивање методе могу се опозвати у подешавањима улога корисника. Погледајте User roles за више информација.
Својства LLD правила (object/array)
треба ажурирати.
Својство itemid
мора бити дефинисано за свако LLD правило, сва остала својства су опциона. Биће ажурирана само прослеђена својства, сва други ће остати непромењена.
Поред standard LLD rule properties, метода прихвата следеће параметре.
Parameter | Type | Description |
---|---|---|
filter | object | LLD rule filter за замену постојећег филтера. |
preprocessing | object/array | LLD rule preprocessing опције за замену постојећих опција за претходну обраду. Parameter behavior: - само за читање за наслеђене објекте |
lld_macro_paths | object/array | LLD rule lld_macro_path опције за замену постојећих опција lld_macro_path. < br>Parameter behavior: - само за читање за наслеђене објекте |
(/manual/api/reference/discoveryrule/object#lld_rule_overrides) опције за замену постојећих опција замене. Parameter behavior: - само за читање за наслеђене објекте |
(object)
Враћа објекат који садржи ID-ијеве ажурираних LLD правила под својством itemids
.
Додајте филтер како би садржај {#FSTYPE} макроа одговарао @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
}
```Одговор:
```json
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"22450"
]
},
"id": 1
}
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "22450",
"lld_macro_paths": [
{
"lld_macro": "{#MACRO1}",
"path": "$.json.path"
}
]
},
"id": 1
}
Одговор:
Онемогући LLD пресретање за правило откривања.
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "28336",
"allow_traps": 0
},
"id": 1
}
Одговор:
Ажурирајте LLD правило правилом за претходну обраду “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
}
Одговор:
Ажурирајте скрипту LLD правила другом скриптом и уклоните непотребне параметре које је користила претходна скрипта.
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "23865",
"parameters": [],
"script": "Zabbix.log(3, 'Log test');\nreturn 1;"
},
"id": 1
}
Одговор:
Ажурирајте LLD правило да бисте онемогућили ентитет који више није откривен након 12 сати и да бисте га избрисали након 7 дана.
{
"jsonrpc": "2.0",
"method": "discoveryrule.update",
"params": {
"itemid": "46864",
"lifetime_type": 0,
"lifetime": "7d",
"enabled_lifetime_type": 0,
"enabled_lifetime": "12h"
},
"id": 1
}
Одговор:
json
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"46864"
]
},
"id": 1
}
CDiscoveryRule::update() у ui/include/classes/api/services/CDiscoveryRule.php.