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

概要

Low-level discovery (LLD) は、ホスト上のエンティティ(例: ファイルシステム、ネットワークインターフェース)を自動的に検出し、各エンティティごとに手動設定を行わなくても、対応するアイテム、トリガー、グラフを作成します。

LLD を使用するには、エンティティを記述する JSON データを収集する discovery rule を作成し、各エンティティに対する prototypes(item、trigger、graph)を用意します。

rule によって返される JSON はオブジェクトの配列でなければならず、各オブジェクトはキーと値のペアを使用して 1 つの検出済みエンティティを表します。たとえば、net.if.discovery を持つ discovery rule は次のような値を返す場合があります。

[
  {"{#IFNAME}": "lo"},
  {"{#IFNAME}": "eth0"}
]

その後、対応するアイテム、トリガー、グラフのセットが prototypes から作成されます。インターフェースごとに 1 つずつ、lo と eth0 の分が作成されます。

オブジェクトに {#MACRO} 形式のキーが含まれている場合、それらのマクロは prototypes で直接使用されます。含まれていない場合、または追加の/カスタムのマクロが必要な場合は、マクロを 手動で定義 し、JSONPath を使用して JSON フィールドにマッピングできます。

LLD は ホスト も作成でき、たとえばハイパーバイザー上で検出された 仮想マシン に対して利用できます。また、複数レベルの検出のために ネストされた discovery rules もサポートします。

もはや検出されなくなったエンティティは、自動的に 無効化または削除 できます。

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

ここでは、ファイルシステムのディスカバリを例に、低レベルディスカバリについて説明します。

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

  1. Data collection > Templates または Hosts に移動します。
  2. 適切なテンプレート/ホストの行にある Discovery をクリックします。

  1. 画面右上の Create discovery rule をクリックします。
  2. 必要な詳細を入力して、ディスカバリルールのフォームを完成させます。

ディスカバリルール

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

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

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

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

パラメータ 説明
名前 ディスカバリルールの名前。
タイプ ディスカバリを実行するチェックのタイプ。
この例では、Zabbix エージェントアイテムタイプを使用しています。
ディスカバリルールは、通常のアイテムに依存する依存アイテムにすることもできます。別のディスカバリルールに依存することはできません。依存アイテムの場合は、該当するタイプ(依存アイテム)を選択し、「マスターアイテム」フィールドでマスターアイテムを指定します。マスターアイテムは存在している必要があります。
キー ディスカバリアイテムキーを入力します(最大2048文字)。
例えば、組み込みの「vfs.fs.discovery」アイテムキーを使用すると、コンピューター上に存在するファイルシステム、そのタイプ、マウントオプションの一覧を含むJSON文字列を返すことができます。
ファイルシステムのディスカバリには、「vfs.fs.get」エージェントキーによるディスカバリ結果を使用する方法もあります(例を参照)。
更新間隔 このフィールドでは、Zabbixがディスカバリを実行する頻度を指定します。ファイルシステムのディスカバリを設定したばかりの段階では短い間隔を設定するとよいでしょう。ただし、正常に動作することを確認した後は、ファイルシステムは通常それほど頻繁には変更されないため、30分以上に設定できます。
時間のサフィックスがサポートされています(例: 30s、1m、2h、1d)。
ユーザーマクロがサポートされています。
注: カスタム間隔に0以外の値が存在する場合にのみ、更新間隔を「0」に設定できます。「0」に設定され、0以外の値を持つカスタム間隔(フレキシブルまたはスケジュール)が存在する場合、アイテムはカスタム間隔の期間中にポーリングされます。
新しいディスカバリルールは、スケジューリングまたはフレキシブル更新間隔が設定され、更新間隔が0の場合を除き、作成から60秒以内にチェックされます。
既存のディスカバリルールでは、今すぐ実行 ボタンを押すことで、ディスカバリを直ちに実行できます。
カスタム間隔 アイテムをチェックするためのカスタムルールを作成できます。
フレキシブル - 更新間隔の例外(異なる頻度の間隔)を作成します。
スケジューリング - カスタムポーリングスケジュールを作成します。
詳細については、カスタム間隔を参照してください。
タイムアウト ディスカバリチェックのタイムアウトを設定します。タイムアウトオプションを選択します。
グローバル - プロキシまたはグローバルのタイムアウトを使用します(グレー表示されたタイムアウトフィールドに表示されます)。
上書き - カスタムタイムアウトを使用します(タイムアウトフィールドで設定します。許可される範囲: 1~600秒)。時間のサフィックス(例: 30s、1m)およびユーザーマクロがサポートされています。
タイムアウトリンクをクリックすると、プロキシのタイムアウト、またはプロキシを使用していない場合はグローバルのタイムアウトを設定できます。タイムアウトリンクは、管理者(スーパー)タイプで、管理 > 一般設定または管理 > プロキシのWebインターフェースセクションへの権限を持つユーザーにのみ表示されます。
失われたリソースの削除 ディスカバリのステータスが「検出されなくなりました」になった後、ディスカバリされたエンティティを削除するまでの期間を指定します。
なし - 削除しません。
即時 - 直ちに削除します。
後 - 指定した期間の経過後に削除します。値は失われたリソースの無効化の値より大きくする必要があります。
時間のサフィックスがサポートされています(例: 2h、1d)。
ユーザーマクロがサポートされています。
注: 「即時」の使用は推奨されません。フィルターを誤って編集しただけで、すべての履歴データとともにエンティティが削除される可能性があるためです。
手動で無効にしたリソースは、ローレベルディスカバリによって削除されないことに注意してください。
失われたリソースの無効化 ディスカバリのステータスが「検出されなくなりました」になった後、ディスカバリされたエンティティを無効にするまでの期間を指定します。
なし - 無効にしません。
即時 - 直ちに無効にします。
後 - 指定した期間の経過後に無効にします。値はディスカバリルールの更新間隔より大きくする必要があります。
自動的に無効化されたリソースは、ローレベルディスカバリによって再検出されると再び有効になります。手動で無効にしたリソースは、再検出されても再び有効にはなりません。
失われたリソースの削除が「即時」に設定されている場合、このフィールドは表示されません。
時間のサフィックスがサポートされています(例: 2h、1d)。
ユーザーマクロがサポートされています。
説明 説明を入力します。
有効 チェックすると、ルールが処理されます。

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

前処理

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

関連項目:

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

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

カスタムマクロ

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"}]}。これは、Zabbix 4.2より前のバージョンのローレベルディスカバリ実装との後方互換性のため、単一の「data」オブジェクトが自動的に処理されるためです。

フィルター

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

パラメーター 説明
計算のタイプ フィルターの計算には、次のオプションを使用できます。
And - すべてのフィルターを通過する必要があります。
Or - 1つのフィルターを通過すれば十分です。
And/Or - 異なるマクロ名には And を使用し、同じマクロ名には Or を使用します。
カスタム計算式 - フィルターのカスタム計算を定義できます。計算式には、リスト内のすべてのフィルターを含める必要があります。255文字に制限されています。
フィルター 次のフィルター条件演算子を使用できます。一致する、一致しない、存在する、存在しない。
一致する および 一致しない 演算子では、Perl互換正規表現(PCRE)が必要です。
正規表現フィールドには、正規表現を入力するか、グローバル正規表現を参照できます。

存在する および 存在しない 演算子を使用すると、レスポンス内に指定したLLDマクロが存在するかどうかに基づいてエンティティをフィルタリングできます。
フィルターに指定したマクロがレスポンスにない場合、見つかったエンティティは無視されます。ただし、そのマクロに対して「存在しない」条件が指定されている場合を除きます。

マクロが存在しないことによって計算式の結果に影響する場合は、警告が表示されます。たとえば、次の場合、{#B} が存在しないときに:
{#A} matches 1 and {#B} matches 2 - 警告が表示されます
{#A} matches 1 or {#B} matches 2 - 警告は表示されません。

たとえば、C:、D:、E:のファイルシステムだけが必要な場合は、マクロフィールドに {#FSNAME} を、正規表現フィールドに ^C|^D|^E を入力できます。
{#FSTYPE} マクロ(例: ^ext|^reiserfs)を使用してファイルシステムのタイプでフィルタリングすることもできます。また、ドライブタイプ(Windowsエージェントでのみサポート)では {#FSDRIVETYPE} マクロ(例: fixed)を使用できます。

正規表現をテストするには、たとえば grep -E を使用できます。

for f in ext2 nfs reiserfs smbfs; 
do echo $f | grep -E '^ext|^reiserfs' || echo "SKIP: $f"; 
done

LLDルールで使用する正規表現(たとえば、誤った「ディスカバリ対象のファイルシステム」正規表現)に誤りやタイプミスがあると、多数のホストの設定要素、履歴値、イベントが数千件削除される可能性があります。

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

オーバーライド

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

オーバーライド(存在する場合)は、ドラッグアンドドロップで順序を変更できる一覧に表示され、定義された順序で実行されます。新しいオーバーライドの詳細を設定するには、Overrides ブロックの をクリックします。 既存のオーバーライドを編集するには、オーバーライド名をクリックします。 オーバーライドルールの詳細を編集できるポップアップウィンドウが開きます。

必須パラメータには赤いアスタリスクが付いています。

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

操作の設定

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

パラメータ 説明
Object 使用できるオブジェクトタイプは5つです。
アイテムプロトタイプ
トリガープロトタイプ
グラフプロトタイプ
ホストプロトタイプ
ディスカバリプロトタイプ
Condition 操作を適用するエンティティをフィルタリングできます。
Operator サポートされている演算子:
equals - このプロトタイプに適用
does not equal - このプロトタイプ以外のすべてに適用
contains - プロトタイプ名にこの文字列が含まれる場合に適用
does not contain - プロトタイプ名にこの文字列が含まれない場合に適用
matches - プロトタイプ名が正規表現に一致する場合に適用
does not match - プロトタイプ名が正規表現に一致しない場合に適用
Pattern 検索する正規表現または文字列。
Object: Item prototype
Create enabled チェックボックスを選択すると、元のアイテムプロトタイプの設定を上書きするボタンが表示されます。
Yes - アイテムを有効な状態で追加します。
No - アイテムを検出されたエンティティに追加しますが、無効な状態にします。
Discover チェックボックスを選択すると、元のアイテムプロトタイプの設定を上書きするボタンが表示されます。
Yes - アイテムを追加します。
No - アイテムを追加しません。
Update interval チェックボックスを選択すると、アイテムに異なる間隔を設定できる2つのオプションが表示されます。
Delay - アイテムの更新間隔。ユーザーマクロ、LLDマクロ、および時間のサフィックス(例:30s、1m、2h、1d)がサポートされています(LLDマクロのサポートはZabbix 7.4.11で復元されました)。Custom interval を使用する場合は0に設定してください。
Custom interval - をクリックして、柔軟な間隔またはスケジュール間隔を指定します。詳細はカスタム間隔を参照してください。
History チェックボックスを選択すると、アイテムに異なるヒストリ保存期間を設定できるボタンが表示されます。
Do not store - 選択すると、ヒストリは保存されません。
Store up to - 選択すると、保存期間を指定する入力フィールドが右側に表示されます。ユーザーマクロおよびLLDマクロがサポートされています(LLDマクロのサポートはZabbix 7.4.11で復元されました)。
Trends チェックボックスを選択すると、アイテムに異なるトレンド保存期間を設定できるボタンが表示されます。
Do not store - 選択すると、トレンドは保存されません。
Store up to - 選択すると、保存期間を指定する入力フィールドが右側に表示されます。ユーザーマクロおよびLLDマクロがサポートされています(LLDマクロのサポートはZabbix 7.4.11で復元されました)。
Tags チェックボックスを選択すると、タグと値のペアを指定できる新しいブロックが表示されます。ユーザーマクロおよびLLDマクロがサポートされています。
これらのタグは、タグ名が一致する場合でも、アイテムプロトタイプに指定されたタグに追加されます。
Object: Trigger prototype
Create enabled チェックボックスを選択すると、元のトリガープロトタイプの設定を上書きするボタンが表示されます。
Yes - トリガーを有効な状態で追加します。
No - トリガーを検出されたエンティティに追加しますが、無効な状態にします。
Discover チェックボックスを選択すると、元のトリガープロトタイプの設定を上書きするボタンが表示されます。
Yes - トリガーを追加します。
No - トリガーを追加しません。
Severity チェックボックスを選択すると、トリガーの深刻度ボタンが表示され、トリガーの深刻度を変更できます。
Tags チェックボックスを選択すると、タグと値のペアを指定できる新しいブロックが表示されます。ユーザーマクロおよびLLDマクロがサポートされています。
これらのタグは、タグ名が一致する場合でも、トリガープロトタイプに指定されたタグに追加されます。
Object: Graph prototype
Discover チェックボックスを選択すると、元のグラフプロトタイプの設定を上書きするボタンが表示されます。
Yes - グラフを追加します。
No - グラフを追加しません。
Object: Host prototype
Create enabled チェックボックスを選択すると、元のホストプロトタイプの設定を上書きするボタンが表示されます。
Yes - ホストを有効な状態で作成します。
No - ホストを無効な状態で作成します。
Discover チェックボックスを選択すると、元のホストプロトタイプの設定を上書きするボタンが表示されます。
Yes - ホストを検出します。
No - ホストを検出しません。
Link templates チェックボックスを選択すると、テンプレートを指定する入力フィールドが表示されます。テンプレート名の入力を開始するか、フィールドの横にある Select をクリックして、ポップアップウィンドウの一覧からテンプレートを選択します。
このオーバーライドのテンプレートは、ホストプロトタイプにすでにリンクされているすべてのテンプレートに追加されます。
Tags チェックボックスを選択すると、タグと値のペアを指定できる新しいブロックが表示されます。ユーザーマクロおよびLLDマクロがサポートされています。
これらのタグは、タグ名が一致する場合でも、ホストプロトタイプに指定されたタグに追加されます。
Host inventory チェックボックスを選択すると、ホストプロトタイプの異なるインベントリモードを選択できるボタンが表示されます。
Disabled - ホストインベントリにデータを入力しません。
Manual - 詳細を手動で入力します。
Automated - 収集したメトリクスに基づいてホストインベントリデータを自動入力します。
Object: Discovery prototype
Create enabled チェックボックスを選択すると、元のディスカバリプロトタイプの設定を上書きするボタンが表示されます。
Yes - ディスカバリルールを有効な状態で追加します。
No - ディスカバリルールを無効な状態で追加します。
Discover チェックボックスを選択すると、元のディスカバリプロトタイプの設定を上書きするボタンが表示されます。
Yes - ディスカバリルールを追加します。
No - ディスカバリルールを追加しません。
Update interval チェックボックスを選択すると、ディスカバリルールに異なる間隔を設定できる2つのオプションが表示されます。
Delay - ルールの更新間隔。ユーザーマクロ、LLDマクロ、および時間のサフィックス(例:30s、1m、2h、1d)がサポートされています。Custom interval を使用する場合は0に設定してください。
Custom interval - をクリックして、柔軟な間隔またはスケジュール間隔を指定します。詳細はカスタム間隔を参照してください。

フォームのボタン

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

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

検出されたエンティティ

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

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

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

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

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

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

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

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

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

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

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