discoveryrule.update

Beschrijving

object discoveryrule.update(object/array lldRules)

Met deze methode kunnen bestaande LLD-regels worden bijgewerkt.

Deze methode is alleen beschikbaar voor Admin en Super admin gebruikers typen. Machtigingen om de methode aan te roepen kunnen worden ingetrokken in de gebruikersrol instellingen. Zie Gebruiker rollen voor meer informatie.

Parameters

(object/array) LLD-regel eigenschappen die moeten worden bijgewerkt.

De eigenschap itemid moet worden gedefinieerd voor elke LLD-regel, alle andere eigenschappen zijn optioneel. Alleen de doorgegeven eigenschappen worden bijgewerkt, alle andere blijven onveranderd.

Naast de standaard LLD-regel eigenschappen, accepteert de methode de volgende parameters.

Parameter Type Beschrijving
filter object LLD-regel filter om het huidige filter te vervangen.
preprocessing array LLD-regel voorverwerking opties om de bestaande voorverwerkingsmogelijkheden te vervangen.
lld_macro_paths array LLD-regel lld_macro_path opties om de bestaande lld_macro_path opties te vervangen.
overrides array LLD-regel overrides opties om de bestaande overschrijvingsopties te vervangen.

Retourwaarden

(object) Retourneert een object dat de ID's van de bijgewerkte LLD-regels bevat onder de eigenschap 'itemids'.

Voorbeelden

Een filter toevoegen aan een LLD-regel

Voeg een filter toe zodat de inhoud van de {#FSTYPE} macro overeenkomt de @File systems for discovery regexp.

Verzoek:

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

Antwoord:

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

LLD-macropaden toevoegen

Verzoek:

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

Antwoord:

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

Trapping uitschakelen

Schakel LLD-trapping uit voor detectieregel.

Verzoek:

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

Response:

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

Voorbewerkingsopties voor LLD-regels bijwerken

Werk een LLD-regel bij met preprocessing-regel "JSONPath".

Verzoek:

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

Antwoord:

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

LLD-regelscript bijwerken

Werk een LLD-regelscript bij met een ander script en verwijder onnodige parameters die werden gebruikt door het vorige script.

Verzoek:

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

Antwoord:

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

Bron

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