discoveryrule.update

Опис

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.

Примери

Додавање филтера LLD правилу

Додајте филтер како би садржај {#FSTYPE} макроа одговарао @File systems for discovery* регуларног израза.

Request:

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

Додавање LLD макро путања

Request:

{
            "jsonrpc": "2.0",
            "method": "discoveryrule.update",
            "params": {
            "itemid": "22450",
            "lld_macro_paths": [
            {
            "lld_macro": "{#MACRO1}",
            "path": "$.json.path"
            }
            ]
            },
            "id": 1
       }

Одговор:

{
            "jsonrpc": "2.0",
            "result": {
            "itemids": [
            "22450"
            ]
            },
            "id": 1
       }

Онемогући пресретање

Онемогући LLD пресретање за правило откривања.

Request:

{
            "jsonrpc": "2.0",
            "method": "discoveryrule.update",
            "params": {
            "itemid": "28336",
            "allow_traps": 0
            },
            "id": 1
       }

Одговор:

{
            "jsonrpc": "2.0",
            "result": {
            "itemids": [
            "28336"
            ]
            },
            "id": 1
       }

Ажурирање опција за претходну обраду LLD правила

Ажурирајте LLD правило правилом за претходну обраду “JSONPath”.

Request:

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

Одговор:

{
            "jsonrpc": "2.0",
            "result": {
            "itemids": [
            "44211"
            ]
            },
            "id": 1
       }

Ажурирање скрипте LLD правила

Ажурирајте скрипту LLD правила другом скриптом и уклоните непотребне параметре које је користила претходна скрипта.

Request:

{
            "jsonrpc": "2.0",
            "method": "discoveryrule.update",
            "params": {
            "itemid": "23865",
            "parameters": [],
            "script": "Zabbix.log(3, 'Log test');\nreturn 1;"
            },
            "id": 1
       }

Одговор:

{
            "jsonrpc": "2.0",
            "result": {
            "itemids": [
            "23865"
            ]
            },
            "id": 1
       }

Ажурирање трајања LLD правила

Ажурирајте LLD правило да бисте онемогућили ентитет који више није откривен након 12 сати и да бисте га избрисали након 7 дана.

Request:

{
            "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.