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:
CDiscoveryRule::update() in ui/include/classes/api/services/CDiscoveryRule.php.