3 ローレベルディスカバリ

概要

ローレベルディスカバリ(LLD)は、ホスト上のさまざまなエンティティに対して、アイテム、トリガー、グラフを自動的に作成する方法を提供します。 たとえば、Zabbix は、各ファイルシステムやネットワークインターフェースごとにアイテムを手動で作成しなくても、マシン上のファイルシステムやネットワークインターフェースの監視を自動的に開始できます。 LLD はホストの作成も可能で、たとえばハイパーバイザー上で検出された仮想マシンを追加したり、ネストされたディスカバリルールによって多段階のディスカバリを有効にしたりできます。 さらに、定期的に実行されるディスカバリの実際の結果に基づいて、不要なエンティティを自動的に削除するように Zabbix を設定することも可能です。

ユーザーは、特定の JSON プロトコルに従う限り、独自のディスカバリタイプを定義できます。

ディスカバリプロセスの一般的なアーキテクチャは次のとおりです。

まず、ユーザーは データ収集 > テンプレートディスカバリ 列でディスカバリルールを作成します。 ディスカバリルールは、(1) 必要なエンティティ(たとえば、ファイルシステムやネットワークインターフェース)を検出するアイテムと、(2) そのアイテムの値に基づいて作成されるアイテム、トリガー、グラフのプロトタイプで構成されます。

必要なエンティティを検出するアイテムは、他の場所で見られる通常のアイテムと同様です。サーバーは Zabbix エージェント(または、そのアイテムに設定されたタイプに応じた対象)にそのアイテムの値を要求し、エージェントはテキスト値を返します。 違いは、エージェントが返す値に、検出されたエンティティの一覧が JSON 形式で含まれている必要があることです。 この形式の詳細は、カスタムディスカバリチェックの実装者にとってのみ重要ですが、返される値にはマクロ → 値のペアの一覧が含まれていることを理解しておく必要があります。 たとえば、アイテム "net.if.discovery" は、"{#IFNAME}" → "lo" と "{#IFNAME}" → "eth0" の 2 つのペアを返す場合があります。

これらのマクロは、名前、キー、その他のプロトタイプフィールドで使用され、受信した値に置き換えられることで、検出された各エンティティに対する実際のアイテム、トリガー、グラフ、さらにはホストの作成に利用されます。 LLD マクロの使用方法については、オプションの完全な一覧を参照してください。

サーバーがディスカバリアイテムの値を受信すると、マクロ → 値のペアを確認し、各ペアごとに、そのプロトタイプに基づいて実際のアイテム、トリガー、グラフを生成します。 上記の "net.if.discovery" の例では、サーバーはループバックインターフェース "lo" 用に 1 セットのアイテム、トリガー、グラフを生成し、インターフェース "eth0" 用に別の 1 セットを生成します。

Zabbix 4.2 以降、ローレベルディスカバリルールが返す JSON の形式が変更されている点に注意してください。 JSON に "data" オブジェクトが含まれていることは、もはや前提ではありません。 ローレベルディスカバリは、アイテム値の前処理や、JSON ドキュメント内のローレベルディスカバリマクロ値へのカスタムパスといった新機能をサポートするため、配列を含む通常の JSON を受け入れるようになりました。

組み込みのディスカバリキーは、JSON ドキュメントのルートで LLD 行の配列を返すように更新されました。 配列フィールドのキーとして {#MACRO} 構文が使用されている場合、Zabbix はマクロと値を自動的に抽出します。 新しいネイティブディスカバリチェックはすべて、"data" 要素を含まない新しい構文を使用します。 ローレベルディスカバリ値を処理する際には、まずルート($. または $.data にある配列)が特定されます)。

"data" 要素はディスカバリ関連のすべてのネイティブアイテムから削除されましたが、後方互換性のために、Zabbix は引き続き "data" 要素を含む JSON 表記を受け入れます。ただし、その使用は推奨されません。 JSON に "data" 配列要素のみを 1 つ持つオブジェクトが含まれている場合、JSONPath $.data を使用してその要素の内容が自動的に抽出されます。 ローレベルディスカバリは、JSONPath 構文で指定されたカスタムパスを持つ、ユーザー定義の任意の LLD マクロも受け入れるようになりました。

上記の変更の結果、新しいエージェントは古い Zabbix サーバーでは動作しなくなります。

参照: 検出されたエンティティ

ローレベルディスカバリの設定

ファイルシステムディスカバリの例に基づいて、ローレベルディスカバリを説明します。

ディスカバリを設定するには、次の手順を実行します。

  • データ収集 > テンプレート または ホスト に移動します。
  • 適切なテンプレート/ホストの行で ディスカバリ をクリックします。

  • 画面右上の ディスカバリルールの作成 をクリックします。
  • ディスカバリルールのフォームに必要な詳細を入力します。

ディスカバリルール

ディスカバリルールのフォームには5つのタブがあり、左から右へ、ディスカバリ中のデータフローを表しています。

  • ディスカバリルール - ディスカバリデータを取得するための組み込みアイテムまたはカスタムスクリプトを主に指定します。
  • 前処理 - 検出されたデータに対して前処理を適用します。
  • LLDマクロ - 検出されたアイテム、トリガーなどで使用するマクロ値を抽出できます。
  • フィルター - 検出された値をフィルタリングできます。
  • オーバーライド - 特定の検出オブジェクトに適用する際に、アイテム、トリガー、グラフ、またはホストプロトタイプを変更できます。

ディスカバリルールタブには、ディスカバリに使用するアイテムキー(およびディスカバリルールの一般的な属性)が含まれています。

必須入力フィールドにはすべて赤いアスタリスクが付いています。

Parameter Description
Name ディスカバリルールの名前。
Type ディスカバリを実行するチェックのタイプ。
この例では、Zabbixエージェント アイテムタイプを使用しています。
ディスカバリルールは、通常のアイテムに依存する dependent item にすることもできます。別のディスカバリルールに依存することはできません。依存アイテムの場合は、該当するタイプ(Dependent item)を選択し、'Master item' フィールドでマスターアイテムを指定します。マスターアイテムは存在している必要があります。
Key ディスカバリアイテムキーを入力します(最大2048文字)。
たとえば、組み込みの "vfs.fs.discovery" アイテムキーを使用すると、コンピュータ上に存在するファイルシステムの一覧、そのタイプ、およびマウントオプションを含むJSON文字列を返すことができます。
なお、ファイルシステムディスカバリの別の方法として、"vfs.fs.get" エージェントキーによるディスカバリ結果を使用することもできます(を参照)。
Update interval このフィールドでは、Zabbixがどのくらいの頻度でディスカバリを実行するかを指定します。ファイルシステムディスカバリを設定し始めたばかりの段階では短い間隔に設定したいかもしれませんが、正常に動作することが確認できたら、ファイルシステムは通常それほど頻繁には変化しないため、30分以上に設定できます。
Time suffixes がサポートされています。例: 30s, 1m, 2h, 1d。
User macros がサポートされています。
: 更新間隔を '0' に設定できるのは、0以外の値を持つカスタム間隔が存在する場合のみです。'0' に設定され、0以外の値を持つカスタム間隔(柔軟またはスケジュール)が存在する場合、アイテムはそのカスタム間隔の期間中にポーリングされます。
新しいディスカバリルールは、Scheduling または Flexible update interval があり、かつ Update interval が 0 に設定されている場合を除き、作成後60秒以内にチェックされます。
また、既存のディスカバリルールでは、Execute now button を押すことで直ちにディスカバリを実行できる点にも注意してください。
Custom intervals アイテムをチェックするためのカスタムルールを作成できます。
Flexible - Update interval の例外を作成します(異なる頻度の間隔)
Scheduling - カスタムのポーリングスケジュールを作成します。
詳細は Custom intervals を参照してください。
Timeout ディスカバリチェックのタイムアウトを設定します。タイムアウトオプションを選択してください。
Global - プロキシ/グローバルタイムアウトが使用されます(グレー表示された Timeout フィールドに表示されます)。
Override - カスタムタイムアウトが使用されます(Timeout フィールドで設定。許容範囲: 1 - 600s)。Time suffixes(例: 30s, 1m)および user macros がサポートされています。
Timeouts リンクをクリックすると、プロキシ のタイムアウト、または global タイムアウト(プロキシを使用していない場合)を設定できます。なお、Timeouts リンクは、Administration > General または Administration > Proxies のWebインターフェースセクションに対する権限を持つ Super admin タイプのユーザーにのみ表示されます。
Delete lost resources 検出されたエンティティのディスカバリ状態が "Not discovered anymore" になった後、どのくらいで削除するかを指定します。
Never - 削除されません。
Immediately - 直ちに削除されます。
After - 指定した期間の後に削除されます。この値は Disable lost resources の値より大きくなければなりません。
Time suffixes がサポートされています。例: 2h, 1d。
User macros がサポートされています。
: "Immediately" の使用は推奨されません。フィルターを誤って編集しただけで、履歴データを含めてエンティティが削除される可能性があるためです。
なお、手動で無効化されたリソースは、ローレベルディスカバリによって削除されません。
Disable lost resources 検出されたエンティティのディスカバリ状態が "Not discovered anymore" になった後、どのくらいで無効化するかを指定します。
Never - 無効化されません。
Immediately - 直ちに無効化されます。
After - 指定した期間の後に無効化されます。この値はディスカバリルールの更新間隔より大きい必要があります。
なお、自動的に無効化されたリソースは、ローレベルディスカバリによって再検出されると再び有効になります。手動で無効化されたリソースは、再検出されても再び有効にはなりません。
このフィールドは、Delete lost resources が "Immediately" に設定されている場合は表示されません。
Time suffixes がサポートされています。例: 2h, 1d。
User macros がサポートされています。
Description 説明を入力します。
Enabled チェックすると、このルールが処理されます。

ディスカバリルールの履歴は保持されません。

前処理

前処理タブでは、ディスカバリの結果に適用する変換ルールを定義できます。
このステップでは、1つまたは複数の変換を設定できます。
変換は、定義された順序で実行されます。
すべての前処理は Zabbixサーバー によって実行されます。

関連項目:

Type
変換 説明
Text
正規表現 受信した値を <pattern> 正規表現に照合し、抽出した <output> で値を置き換えます。正規表現では、\N シーケンスを使用して最大10個のキャプチャグループを抽出できます。
パラメータ:
pattern - 正規表現
output - 出力書式テンプレート。\N(N=1…9)エスケープシーケンスは N 番目に一致したグループに置き換えられます。\0 エスケープシーケンスは一致したテキストに置き換えられます。
Custom on fail チェックボックスをオンにすると、カスタムのエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定することが可能です。
置換 検索文字列を見つけて別の文字列(または空)に置き換えます。検索文字列のすべての出現箇所が置き換えられます。
パラメータ:
search string - 検索して置換する文字列。大文字と小文字を区別します(必須)
replacement - 検索文字列を置き換える文字列。置換文字列は空にすることもでき、その場合は見つかった検索文字列を削除できます。
改行、キャリッジリターン、タブ、スペースを検索または置換するために、エスケープシーケンス "\n \r \t \s" を使用できます。バックスラッシュは "\\" としてエスケープでき、エスケープシーケンス自体は "\\n" のようにエスケープできます。改行、キャリッジリターン、タブのエスケープは、ローレベルディスカバリ中に自動的に行われます。
Structured data
JSONPath JSONPath 機能を使用して、JSON データから値または断片を抽出します。
Custom on fail チェックボックスをオンにすると、カスタムのエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定することが可能です。
XML XPath XPath 機能を使用して、XML データから値または断片を抽出します。
このオプションを機能させるには、Zabbixサーバー が libxml サポート付きでコンパイルされている必要があります。
例:
number(/document/item/value)<document><item><value>10</value></item></document> から 10 を抽出します
number(/document/item/@attribute)<document><item attribute="10"></item></document> から 10 を抽出します
/document/item<document><item><value>10</value></item></document> から <item><value>10</value></item> を抽出します
名前空間はサポートされていないことに注意してください。
Custom on fail チェックボックスをオンにすると、カスタムのエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定することが可能です。
CSV to JSON CSV ファイルデータを JSON 形式に変換します。
詳細は CSV to JSON preprocessing を参照してください。
XML to JSON XML 形式のデータを JSON に変換します。
詳細は Serialization rules を参照してください。
Custom on fail チェックボックスをオンにすると、カスタムのエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定することが可能です。
SNMP
SNMP walk value 指定した OID/MIB 名で値を抽出し、書式設定オプションを適用します:
Unchanged - Hex-STRING をエスケープされていない16進文字列として返します(: 表示ヒントは引き続き適用されます)。
UTF-8 from Hex-STRING - Hex-STRING を UTF-8 文字列に変換します。
MAC from Hex-STRING - Hex-STRING を MAC アドレス文字列に変換します(' '':' に置き換えられます)。
Integer from BITS - 16進文字の並びで表現されたビット文字列(例: "1A 2B 3C 4D")の先頭8バイトを、64ビット符号なし整数に変換します。8バイトを超えるビット文字列では、それ以降のバイトは無視されます。
Custom on fail チェックボックスをオンにすると、カスタムのエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定することが可能です。
SNMP walk to JSON SNMP 値を JSON に変換します。JSON 内のフィールド名と、それに対応する SNMP OID パスを指定します。フィールド値には、指定した SNMP OID パス内の値が設定されます。
この前処理ステップは、SNMP OID discovery に使用できます。
SNMP walk value ステップと同様の値書式設定オプションを利用できます。
Custom on fail チェックボックスをオンにすると、カスタムのエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定することが可能です。
SNMP get value SNMP get 値に書式設定オプションを適用します:
UTF-8 from Hex-STRING - Hex-STRING を UTF-8 文字列に変換します。
MAC from Hex-STRING - Hex-STRING を MAC アドレス文字列に変換します(' '':' に置き換えられます)。
Integer from BITS - 16進文字の並びで表現されたビット文字列(例: "1A 2B 3C 4D")の先頭8バイトを、64ビット符号なし整数に変換します。8バイトを超えるビット文字列では、それ以降のバイトは無視されます。
Custom on fail チェックボックスをオンにすると、カスタムのエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定することが可能です。
Custom scripts
JavaScript パラメータフィールド内、またはその横にある鉛筆アイコンをクリックすると開くモーダルエディターに JavaScript コードを入力します。
使用可能な JavaScript の長さは、使用しているデータベース に依存することに注意してください。
詳細は Javascript preprocessing を参照してください。
Validation
正規表現に一致しない 値が一致してはならない正規表現を指定します。
例: Error:(.*?)\.
Custom on fail チェックボックスをオンにすると、カスタムのエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定することが可能です。
JSON 内のエラーを確認 JSONPath にあるアプリケーションレベルのエラーメッセージを確認します。成功し、かつメッセージが空でない場合は処理を停止します。それ以外の場合は、この前処理ステップの前の値で処理を続行します。これらの外部サービスエラーは、前処理ステップ情報を追加せずに、そのままユーザーに報告されることに注意してください。
例: $.errors{"errors":"e1"} のような JSON を受信した場合、次の前処理ステップは実行されません。
Custom on fail チェックボックスをオンにすると、カスタムのエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定することが可能です。
XML 内のエラーを確認 Xpath にあるアプリケーションレベルのエラーメッセージを確認します。成功し、かつメッセージが空でない場合は処理を停止します。それ以外の場合は、この前処理ステップの前の値で処理を続行します。これらの外部サービスエラーは、前処理ステップ情報を追加せずに、そのままユーザーに報告されることに注意してください。
無効な XML の解析に失敗した場合、エラーは報告されません。
Custom on fail チェックボックスをオンにすると、カスタムのエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定することが可能です。
正規表現に一致する 値が一致しなければならない正規表現を指定します。
Custom on fail チェックボックスをオンにすると、カスタムのエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定することが可能です。
Throttling
ハートビート付きで未変更を破棄 定義した期間(秒)内に値が変化していない場合、その値を破棄します。
秒数の指定には正の整数値を使用できます(最小値は 1 秒)。このフィールドでは時間サフィックスを使用できます(例: 30s, 1m, 2h, 1d)。このフィールドではユーザーマクロおよびローレベルディスカバリマクロを使用できます。
ディスカバリアイテムには、スロットリングオプションを1つだけ指定できます。
例: 1m。同一のテキストが 60 秒以内にこのルールへ2回渡された場合、その値は破棄されます。
: アイテムのプロトタイプを変更してもスロットリングはリセットされません。スロットリングがリセットされるのは、前処理ステップが変更された場合のみです。
Prometheus
Prometheus to JSON 必要な Prometheus メトリクスを JSON に変換します。
詳細は Prometheus checks を参照してください。

ディスカバリルールがテンプレート経由でホストに適用されている場合、このタブの内容は読み取り専用になることに注意してください。

カスタムマクロ

LLDマクロタブでは、カスタムのローレベルディスカバリマクロを指定できます。

カスタムマクロは、返されるJSONに必要なマクロがすでに定義されていない場合に便利です。 例えば、以下のような場合です。

  • ファイルシステムディスカバリ用のネイティブなvfs.fs.discoveryキーは、{#FSNAME}、{#FSTYPE}などのいくつかの事前定義されたLLDマクロを持つJSONを返します。 これらのマクロは、アイテムやトリガープロトタイプ(ページの後続セクションを参照)で直接使用できます。カスタムマクロを定義する必要はありません。
  • vfs.fs.getエージェントアイテムもファイルシステムデータを含むJSONを返しますが、事前定義されたLLDマクロはありません。 この場合、マクロを自分で定義し、JSONPathを使用してJSON内の値にマッピングできます。

抽出された値は、ディスカバリされたアイテムやトリガーなどで使用できます。 値はディスカバリの結果およびこれまでの前処理ステップから抽出されることに注意してください。

パラメータ 説明
LLDマクロ ローレベルディスカバリマクロの名前。次の構文を使用します: {#MACRO}。
JSONPath JSONPath構文を使用して、LLD行からLLDマクロ値を抽出するために使用されるパス。
返されたJSONから抽出された値は、アイテム、トリガーなどのプロトタイプフィールドのLLDマクロを置き換えるために使用されます。
JSONPathはドット表記またはブラケット表記で指定できます。特殊文字やUnicodeの場合はブラケット表記を使用する必要があります。例: $['unicode + special chars #1']['unicode + special chars #2']

例えば、$.fooはこのJSONから"bar"と"baz"を抽出します: [{"foo":"bar"}, {"foo":"baz"}]
また、$.fooはこのJSONからも"bar"と"baz"を抽出します: {"data":[{"foo":"bar"}, {"foo":"baz"}]}。これは、単一の"data"オブジェクトが自動的に処理されるためです(Zabbix 4.2以前のローレベルディスカバリ実装との後方互換性のため)。

フィルター

フィルターを使用して、条件に一致するエンティティの実際のアイテム、トリガー、グラフのみを生成できます。 フィルタータブには、ディスカバリ値をフィルタリングするためのディスカバリルールフィルター定義が含まれています。

パラメータ 説明
計算タイプ フィルターの計算には以下のオプションがあります:
And - すべてのフィルターを通過する必要があります;
Or - 1つのフィルターを通過すれば十分です;
And/Or - 異なるマクロ名にはAnd、同じマクロ名にはOrを使用します;
カスタム式 - フィルターのカスタム計算を定義することができます。式にはリスト内のすべてのフィルターを含める必要があります。255文字までに制限されています。
フィルター 以下のフィルター条件演算子が利用可能です: 一致する一致しない存在する存在しない
一致するおよび一致しない演算子はPerl互換正規表現(PCRE)を想定しています。たとえば、C:、D:、E:ファイルシステムのみに関心がある場合は、「マクロ」に{#FSNAME}を、「正規表現」に"\C|\D|\E"を入力します。{#FSTYPE}マクロ(例: "\ext|\reiserfs")を使用してファイルシステムタイプで、{#FSDRIVETYPE}マクロ(例: "fixed"、Windowsエージェントのみ対応)を使用してドライブタイプでフィルタリングすることも可能です。
「正規表現」フィールドには、正規表現を入力するか、グローバル正規表現を参照できます。
正規表現をテストするには、「grep -E」を使用できます。例: ````for f in ext2 nfs reiserfs smbfs; do echo $f | grep -E '
ext|^reiserfs' || echo "SKIP: $f"; done````

存在するおよび存在しない演算子は、レスポンス内の指定されたLLDマクロの有無に基づいてエンティティをフィルタリングできます。
フィルターのマクロがレスポンスに存在しない場合、そのマクロに「存在しない」条件が指定されていない限り、検出されたエンティティは無視されることに注意してください。

マクロの不在が式の結果に影響する場合、警告が表示されます。たとえば、{#B}が存在しない場合:
{#A}が1に一致し、かつ{#B}が2に一致する - 警告が表示されます
{#A}が1に一致する、または{#B}が2に一致する - 警告なし

LLDルールで使用される正規表現にミスやタイプミスがある場合(例: 不正な「ディスカバリ用ファイルシステム」正規表現)、多数のホストの構成要素、履歴値、イベントが削除される可能性があります。

ファイルシステム名が大文字小文字のみ異なる場合に正しくディスカバリするには、MySQLでZabbixデータベースを大文字小文字を区別するように作成する必要があります。

オーバーライド

オーバーライドタブでは、指定した条件を満たす検出オブジェクトに対して、アイテム、トリガー、グラフ、ホスト、ディスカバリプロトタイプのリストや属性を変更するルールを設定できます。

オーバーライド(存在する場合)はドラッグ&ドロップで並べ替え可能なリストで表示され、定義された順に実行されます。新しいオーバーライドの詳細を設定するには、オーバーライドブロックのをクリックします。 既存のオーバーライドを編集するには、オーバーライド名をクリックします。 オーバーライドルールの詳細を編集できるポップアップウィンドウが開きます。

必須パラメータはすべて赤いアスタリスクでマークされています。

パラメータ 説明
名前 LLDルールごとに一意のオーバーライド名。
フィルタに一致した場合 フィルタ条件が一致した場合に次のオーバーライドを処理するかどうかを定義します:
オーバーライドを継続 - 後続のオーバーライドが処理されます。
処理を停止 - 直前(存在する場合)およびこのオーバーライドの操作が実行され、一致したLLD行に対して後続のオーバーライドは無視されます。
フィルタ オーバーライドを適用する検出エンティティを決定します。オーバーライドフィルタはディスカバリルールのフィルタの後に処理され、同じ機能を持ちます。
操作 オーバーライド操作は以下の詳細で表示されます:
条件 - オブジェクトタイプとオブジェクト名に対して満たすべき条件。例:トリガープロトタイプがDisk space is low (used > 50%)と等しくない。
アクション - 操作の編集および削除のリンクが表示されます。

操作の設定

新しい操作の詳細を設定するには、操作ブロックのをクリックします。 既存の操作を編集するには、操作の横にあるをクリックします。 操作の詳細を編集できるポップアップウィンドウが開きます。

パラメータ 説明
オブジェクト 5種類のオブジェクトが利用可能です:
アイテムプロトタイプ
トリガープロトタイプ
グラフプロトタイプ
ホストプロトタイプ
ディスカバリプロトタイプ
条件 操作を適用するエンティティをフィルタリングできます。
演算子 サポートされている演算子:
等しい - このプロトタイプに適用
等しくない - このプロトタイプ以外すべてに適用
含む - プロトタイプ名がこの文字列を含む場合に適用
含まない - プロトタイプ名がこの文字列を含まない場合に適用
一致する - プロトタイプ名が正規表現に一致する場合に適用
一致しない - プロトタイプ名が正規表現に一致しない場合に適用
パターン 正規表現または検索する文字列。
オブジェクト: アイテムプロトタイプ
有効で作成 チェックボックスをオンにすると、元のアイテムプロトタイプの設定を上書きできるボタンが表示されます:
はい - アイテムは有効な状態で追加されます。
いいえ - アイテムは検出されたエンティティに追加されますが、無効な状態になります。
検出 チェックボックスをオンにすると、元のアイテムプロトタイプの設定を上書きできるボタンが表示されます:
はい - アイテムが追加されます。
いいえ - アイテムは追加されません。
更新間隔 チェックボックスをオンにすると、アイテムの異なる間隔を設定できる2つのオプションが表示されます:
間隔 - アイテムの更新間隔。ユーザーマクロおよび時間のサフィックス(例:30s、1m、2h、1d)がサポートされています。カスタム間隔を使用する場合は0に設定する必要があります。
カスタム間隔 - 柔軟/スケジューリング間隔を指定するにはをクリックします。詳細はカスタム間隔を参照してください。
ヒストリ チェックボックスをオンにすると、アイテムの異なるヒストリ保存期間を設定できるボタンが表示されます:
保存しない - 選択した場合、ヒストリは保存されません。
保存期間 - 選択した場合、右側に保存期間を指定する入力フィールドが表示されます。ユーザーマクロおよびLLDマクロがサポートされています。
トレンド チェックボックスをオンにすると、アイテムの異なるトレンド保存期間を設定できるボタンが表示されます:
保存しない - 選択した場合、トレンドは保存されません。
保存期間 - 選択した場合、右側に保存期間を指定する入力フィールドが表示されます。ユーザーマクロおよびLLDマクロがサポートされています。
タグ チェックボックスをオンにすると、タグと値のペアを指定できる新しいブロックが表示されます。
これらのタグは、タグ名が一致していても、アイテムプロトタイプで指定されたタグに追加されます。
オブジェクト: トリガープロトタイプ
有効で作成 チェックボックスをオンにすると、元のトリガープロトタイプの設定を上書きできるボタンが表示されます:
はい - トリガーは有効な状態で追加されます。
いいえ - トリガーは検出されたエンティティに追加されますが、無効な状態になります。
検出 チェックボックスをオンにすると、元のトリガープロトタイプの設定を上書きできるボタンが表示されます:
はい - トリガーが追加されます。
いいえ - トリガーは追加されません。
深刻度 チェックボックスをオンにすると、トリガーの深刻度を変更できるボタンが表示されます。
タグ チェックボックスをオンにすると、タグと値のペアを指定できる新しいブロックが表示されます。
これらのタグは、タグ名が一致していても、トリガープロトタイプで指定されたタグに追加されます。
オブジェクト: グラフプロトタイプ
検出 チェックボックスをオンにすると、元のグラフプロトタイプの設定を上書きできるボタンが表示されます:
はい - グラフが追加されます。
いいえ - グラフは追加されません。
オブジェクト: ホストプロトタイプ
有効で作成 チェックボックスをオンにすると、元のホストプロトタイプの設定を上書きできるボタンが表示されます:
はい - ホストは有効な状態で作成されます。
いいえ - ホストは無効な状態で作成されます。
検出 チェックボックスをオンにすると、元のホストプロトタイプの設定を上書きできるボタンが表示されます:
はい - ホストが検出されます。
いいえ - ホストは検出されません。
テンプレートのリンク チェックボックスをオンにすると、テンプレートを指定する入力フィールドが表示されます。テンプレート名の入力を開始するか、フィールド横の選択をクリックしてポップアップウィンドウのリストからテンプレートを選択します。
このオーバーライドのテンプレートは、すでにホストプロトタイプにリンクされているすべてのテンプレートに追加されます。
タグ チェックボックスをオンにすると、タグと値のペアを指定できる新しいブロックが表示されます。
これらのタグは、タグ名が一致していても、ホストプロトタイプで指定されたタグに追加されます。
ホストインベントリ チェックボックスをオンにすると、ホストプロトタイプのインベントリモードを選択できるボタンが表示されます:
無効 - ホストインベントリを入力しない
手動 - 手動で詳細を入力
自動 - 収集したメトリクスに基づいてホストインベントリデータを自動入力します。

フォームボタン

フォームの下部にあるボタンで、いくつかの操作を実行できます。

ディスカバリルールを追加します。このボタンは新しいディスカバリルールの場合のみ利用できます。
ディスカバリルールのプロパティを更新します。このボタンは既存のディスカバリルールの場合のみ利用できます。
現在のディスカバリルールのプロパティを元に、別のディスカバリルールを作成します。
ディスカバリルールに基づいて即座にディスカバリを実行します。ディスカバリルールはすでに存在している必要があります。詳細はこちらを参照してください。
※ディスカバリを即座に実行した場合、設定キャッシュは更新されないため、ディスカバリルール設定のごく最近の変更は反映されません。
ディスカバリルールの設定をテストします。このボタンを使用して、設定(接続性やパラメータの正しさなど)を恒久的に変更を適用せずに検証できます。
ディスカバリルールを削除します。
ディスカバリルールのプロパティの編集をキャンセルします。

検出されたエンティティ

以下のスクリーンショットは、ホストの設定で検出されたアイテム、トリガー、グラフがどのように表示されるかを示しています。 検出されたエンティティには、それが由来するディスカバリールールへのオレンジ色のリンクが接頭辞として付けられます。

すでに同じ一意性基準を持つエンティティ(例えば、同じキーのアイテムや同じ名前のグラフ)が存在する場合、検出されたエンティティは作成されません。 この場合、フロントエンドには、低レベルディスカバリールールが特定のエンティティを作成できなかったというエラーメッセージが表示されます。 ただし、いくつかのエンティティが作成できずスキップされた場合でも、ディスカバリールール自体は未サポートにはなりません。 ディスカバリールールは他のエンティティの作成/更新を続行します。

検出されたエンティティ(ホスト、ファイルシステム、インターフェースなど)が検出されなくなった場合(またはフィルターを通過しなくなった場合)、それに基づいて作成されたエンティティは自動的に無効化され、最終的に削除されることがあります。

失われたリソースは、失われたリソースを無効化 パラメータの値に基づいて自動的に無効化される場合があります。 これは失われたホスト、アイテム、トリガーに影響します。

失われたリソースは、失われたリソースを削除 パラメータの値に基づいて自動的に削除される場合があります。 これは失われたホスト、ホストグループ、アイテム、トリガー、グラフに影響します。

検出されたエンティティが「これ以上検出されない」状態になると、エンティティリストにライフタイムインジケーターが表示されます。 マウスポインターをその上に移動すると、ステータスの詳細を示すメッセージが表示されます。

エンティティが削除対象としてマークされたが、期待された時刻に削除されなかった場合(ディスカバリールールやアイテムホストが無効化された場合)、次回ディスカバリールールが処理される際に削除されます。

他のエンティティを含むエンティティが削除対象としてマークされている場合、ディスカバリールールレベルで変更されても更新されません。 例えば、LLDベースのトリガーが削除対象のアイテムを含んでいる場合、それらは更新されません。

その他のディスカバリタイプ

他の種類の標準ディスカバリについての詳細やハウツーは、以下のセクションで確認できます。

ディスカバリアイテムのJSON形式の詳細や、独自のファイルシステムディスカバリをPerlスクリプトとして実装する例については、カスタムLLDルールの作成を参照してください。