discoveryrule.update

Opis

object discoveryrule.update(object/array lldRules)

Ta metoda pozwala na aktualizację istniejących reguł LLD.

Ta metoda jest dostępna tylko dla użytkowników typu Admin i Super admin. Uprawnienia do wywoływania metody można odebrać w ustawieniach roli użytkownika. Zobacz Role użytkownika po więcej informacji.

Parametry

(object/array) Właściwości reguły LLD do aktualizacji.

Właściwość itemid musi być zdefiniowana dla każdej reguły LLD, wszystkie inne właściwości są opcjonalne. Tylko przekazane właściwości zostaną zaktualizowane, wszystkie inne pozostaną bez zmian.

Oprócz standardowych właściwości reguł LLD, metoda akceptuje następujące parametry.

Parametr Typ Opis
filter object Obiekt filtra reguły LLD zastępujący bieżący filtr.
preprocessing array Opcje przetwarzania wstępnego reguły LLD w celu zastąpienia bieżących opcji przetwarzania wstępnego.
lld_macro_paths array Opcje lld_macro_path reguły LLD zastępujące istniejące opcje lld_macro_path.
overrides array Opcje nadpisania reguły zastępujące istniejące opcje nadpisania.

Zwracane wartości

(object) Zwraca obiekt zawierający identyfikatory zaktualizowanych reguł LLD we właściwości itemids.

Przykłady

Dodanie filtra do reguły LLD

Dodaj filtr, aby zawartość makra {#FSTYPE} była zgodna z wyrażeniem regularnym @File systems for discovery.

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "discoveryrule.update",
           "params": {
               "itemid": "22450",
               "filter": {
                   "evaltype": 1,
                   "conditions": [
                       {
                           "macro": "{#FSTYPE}",
                           "value": "@File systems for discovery"
                       }
                   ]
               }
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Odpowiedź:

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

Dodanie ścieżek makr LLD

Zapytanie:

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

Odpowiedź:

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

Wyłącz wyłapywanie (trapper)

Wyłącz wyłapywanie LLD dla reguły wykrywania.

Zapytanie:

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

Odpowiedź:

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

Aktualizowanie opcji wstępnego przetwarzania reguł LLD

Zaktualizuj regułę LLD za pomocą reguły przetwarzania wstępnego “JSONPath“.

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "discoveryrule.update",
           "params": {
               "itemid": "44211",
               "preprocessing": [
                   {
                       "type": 12,
                       "params": "$.path.to.json",
                       "error_handler": 2,
                       "error_handler_params": "5"
                   }
               ]
           },
           "auth": "700ca65537074ec963db7efabda78259",
           "id": 1
       }

Odpowiedź:

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

Aktualizowanie skryptu reguły LLD

Zaktualizuj skrypt reguły LLD za pomocą innego skryptu i usuń niepotrzebne parametry, które były używane przez poprzedni skrypt.

Zapytanie:

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

Odpowiedź:

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

Źródło

CDiscoveryRule::update() w ui/include/classes/api/services/CDiscoveryRule.php.