Sidebar

Zabbix Summit 2022
Register for Zabbix Summit 2022

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-regeleigenschappen moeten worden bijgewerkt.

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

Naast de standaard LLD-regeleigenschappen, is de methode accepteert de volgende parameters.

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

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.