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.