object discoveryrule.update(object/array lldRules)
このメソッドで、既存のローレベルディスカバリルールを更新できます。
このメソッドはAdminおよびSuper adminユーザータイプでのみ使用できます。 メソッドを呼び出す権限は、ユーザーロール設定で取り消すことができます。 詳細についてはユーザーの役割を参照してください。
(object/array)
更新されるLLDルールのプロパティ。
itemid
プロパティはLLDルールごとに定義する必要があり、すべてのプロパティはオプションです。 渡されたプロパティのみが更新され、他のプロパティは変更されません。
このメソッドは標準のLLDルールプロパティに加えて、次のパラメーターを受け入れます。
パラメータ | タイプ | 説明 |
---|---|---|
filter | object | LLDルールフィルターオブジェクトを使用して現在のフィルターを置き換えます |
preprocessing | array | LLDルール事前処理オプションを使用して、現在の事前処理オプションを置き換えます。 |
lld_macro_paths | array | LLDルールlld_macro_pathオプション |
overrides | array | LLDルールオーバーライドオプション |
(object)
itemids
プロパティの下で更新されたLLDルールのIDを含むオブジェクトを返します。
{#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" } ] } }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
Response:
Request:
{ "jsonrpc": "2.0", "method": "discoveryrule.update", "params": { "itemid": "22450", "lld_macro_paths": [ { "lld_macro": "{#MACRO1}", "path": "$.json.path" } ] }, "auth": "038e1d7b1735c6a5436ee9eae095879e", "id": 1 }
Response:
ディスカバリルールのLLDトラッピングを無効にします
Request:
{ "jsonrpc": "2.0", "method": "discoveryrule.update", "params": { "itemid": "28336", "allow_traps": 0 }, "id": 36, "auth": "d678e0b85688ce578ff061bd29a20d3b" }
Response:
事前処理ルール"JSONPath"でLLDルールを更新します。
Request:
{ "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 }
Response:
LLDルールスクリプトを別のスクリプトで更新し、前のスクリプトで使用されていた不要なパラメーターを削除します
Request:
{ "jsonrpc": "2.0", "method": "discoveryrule.update", "params": { "itemid": "23865", "parameters": [], "script": "Zabbix.Log(3, 'Log test');\nreturn 1;" }, "auth": "700ca65537074ec963db7efabda78259", "id": 1 }
Response:
LLD ルールを更新し、検出されなくなったエンティティを 12 時間後に無効化し、7 日後に削除します。
{ "jsonrpc": "2.0", "method": "discoveryrule.update", "params": { "itemid": "46864", "lifetime_type": 0, "lifetime": "7d", "enabled_lifetime_type": 0, "enabled_lifetime": "12h" }, "id": 1 }
Response:
CDiscoveryRule::update() in ui/include/classes/api/services/CDiscoveryRule.php.