3 ローレベルディスカバリ
概要
Low-level discovery (LLD) は、ホスト上のさまざまなエンティティに対して、アイテム、トリガー、グラフを自動的に作成する方法を提供します。
たとえば、Zabbix は、各ファイルシステムやネットワークインターフェースごとにアイテムを手動で作成しなくても、マシン上のファイルシステムやネットワークインターフェースの監視を自動的に開始できます。
LLD はホストも作成でき、たとえばハイパーバイザー上で検出された 仮想マシンを登録する ことができます。
さらに、定期的に実行されるディスカバリの実際の結果に基づいて、不要になったエンティティを自動的に削除するよう Zabbix を設定することも可能です。
ユーザーは、特定の JSON プロトコルに従う限り、独自のディスカバリタイプを定義できます。
ディスカバリ処理の一般的なアーキテクチャは次のとおりです。
まず、ユーザーは Data collection > Templates の Discovery 列でディスカバリルールを作成します。
ディスカバリルールは、(1) 必要なエンティティ(たとえばファイルシステムやネットワークインターフェース)を検出するアイテムと、(2) そのアイテムの値に基づいて作成されるアイテム、トリガー、グラフのプロトタイプで構成されます。
必要なエンティティを検出するアイテムは、他の場所で見られる通常のアイテムと同様です。サーバーは Zabbix エージェント(またはそのアイテムに設定されたタイプのもの)にそのアイテムの値を要求し、エージェントはテキスト値で応答します。
違いは、エージェントが返す値に、検出されたエンティティの一覧が JSON 形式で含まれている必要があることです。
この形式の詳細はカスタムディスカバリチェックの実装者にとってのみ重要ですが、返される値には macro → value のペアの一覧が含まれていることを知っておく必要があります。
たとえば、アイテム net.if.discovery は 2 つのペア、{#IFNAME} → lo と {#IFNAME} → eth0 を返す場合があります。
これらのマクロは、名前、キー、その他のプロトタイプフィールドで使用され、そこで受け取った値に置き換えられて、検出された各エンティティに対する実際のアイテム、トリガー、グラフ、さらにはホストを作成します。
LLD マクロの使用方法については、オプション の一覧を参照してください。
サーバーがディスカバリアイテムの値を受け取ると、macro → value のペアを確認し、各ペアに対して、そのプロトタイプに基づいて実際のアイテム、トリガー、グラフを生成します。
上記の "net.if.discovery" の例では、サーバーはループバックインターフェース "lo" 用のアイテム、トリガー、グラフのセットを 1 つ生成し、インターフェース "eth0" 用にもう 1 セット生成します。
Zabbix 4.2 以降、low-level discovery ルールが返す JSON の形式が変更されています。
JSON に "data" オブジェクトが含まれていることは、もはや期待されません。
low-level discovery は、アイテム値の前処理や JSON ドキュメント内の low-level discovery マクロ値へのカスタムパスなどの新機能をサポートするため、配列を含む通常の JSON を受け入れるようになりました。
組み込みのディスカバリキーは、JSON ドキュメントのルートに LLD 行の配列を返すよう更新されています。
配列フィールドがキーとして {#MACRO} 構文を使用している場合、Zabbix はマクロと値を自動的に抽出します。
今後追加されるネイティブのディスカバリチェックでは、"data" 要素を使わない新しい構文が使用されます。
low-level discovery の値を処理する際は、まずルートが特定されます($. または $.data の配列)。
"data" 要素はディスカバリに関連するすべてのネイティブアイテムから削除されましたが、後方互換性のため、Zabbix は引き続き "data" 要素を含む JSON 表記を受け入れます。ただし、その使用は推奨されません。
JSON に 1 つの "data" 配列要素のみを持つオブジェクトが含まれている場合、その内容は JSONPath $.data を使用して自動的に抽出されます。
low-level discovery は現在、JSONPath 構文で指定されたカスタムパスを持つ、任意のユーザー定義 LLD マクロも受け入れます。
上記の変更の結果、新しいエージェントは古い Zabbix サーバーでは動作しなくなります。
こちらも参照: 検出されたエンティティ
ローレベルディスカバリの設定
ここでは、ファイルシステムのディスカバリを例に、ローレベルディスカバリについて説明します。
ディスカバリを設定するには、次の手順を実行します。
- Data collection > Templates または Hosts に移動します。
- 対象のテンプレート/ホストの行にある Discovery をクリックします。

- 画面右上の Create discovery rule をクリックします。
- 必要な詳細を入力して、ディスカバリルールのフォームを完成させます。
ディスカバリルール
ディスカバリルールのフォームには5つのタブがあり、左から右へ、ディスカバリ中のデータフローを表しています。
- ディスカバリルール - 主に、ディスカバリデータを取得するための組み込みアイテムまたはカスタムスクリプトを指定します。
- 前処理 - 検出されたデータに前処理を適用します。
- LLDマクロ - 検出されたアイテム、トリガーなどで使用するためのマクロ値を抽出できます。
- フィルター - 検出された値を絞り込めます。
- オーバーライド - 特定の検出オブジェクトに適用する際に、アイテム、トリガー、グラフ、またはホストプロトタイプを変更できます。
ディスカバリルール タブには、ディスカバリに使用するアイテムキー(およびいくつかの一般的なディスカバリルール属性)が含まれます。

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

| Type | ||
|---|---|---|
| Transformation | 説明 | |
| Text | ||
| Regular expression | 受信した値を <pattern> の正規表現に一致させ、抽出した <output> に値を置き換えます。正規表現では、\N シーケンスを使用して最大 10 個のキャプチャグループを抽出できます。 パラメータ: pattern - 正規表現 output - 出力フォーマットテンプレート。エスケープシーケンス \N(N=1…9)は、N 番目の一致グループに置き換えられます。エスケープシーケンス \0 は、一致したテキストに置き換えられます。 Custom on fail チェックボックスをオンにすると、独自のエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定する、のいずれかです。 |
|
| Replace | 検索文字列を見つけて、別の文字列(または空)に置き換えます。検索文字列のすべての出現箇所が置き換えられます。 パラメータ: 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 前処理 を参照してください。 |
|
| XML to JSON | XML 形式のデータを JSON に変換します。 詳細は、シリアル化ルール を参照してください。 Custom on fail チェックボックスをオンにすると、独自のエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定する、のいずれかです。 |
|
| SNMP | ||
| SNMP walk value | 指定した OID/MIB 名で値を抽出し、次の書式設定オプションを適用します: Unchanged - Hex-STRING をエスケープされていない16進文字列として返します(note 表示ヒントは引き続き適用されます); 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 ディスカバリ に使用できます。 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 前処理 を参照してください |
|
| Validation | ||
| Does not match regular expression | 値が一致してはならない正規表現を指定します。 例: Error:(.*?)\.Custom on fail チェックボックスをオンにすると、独自のエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定する、のいずれかです。 |
|
| Check for error in JSON | JSONPath にあるアプリケーションレベルのエラーメッセージを確認します。成功し、メッセージが空でない場合は処理を停止します。そうでない場合は、この前処理ステップの前の値を使って処理を続行します。これらの外部サービスのエラーは、前処理ステップ情報を追加せず、そのままユーザーに報告されることに注意してください。 例: $.errors。{"errors":"e1"} のような JSON を受信した場合、次の前処理ステップは実行されません。Custom on fail チェックボックスをオンにすると、独自のエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定する、のいずれかです。 |
|
| Check for error in XML | Xpath にあるアプリケーションレベルのエラーメッセージを確認します。成功し、メッセージが空でない場合は処理を停止します。そうでない場合は、この前処理ステップの前の値を使って処理を続行します。これらの外部サービスのエラーは、前処理ステップ情報を追加せず、そのままユーザーに報告されることに注意してください。 無効な XML の解析に失敗した場合でも、エラーは報告されません。 Custom on fail チェックボックスをオンにすると、独自のエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定する、のいずれかです。 |
|
| Matches regular expression | 値が一致する必要がある正規表現を指定します。 Custom on fail チェックボックスをオンにすると、独自のエラー処理オプションを指定できます。値を破棄する、指定した値を設定する、または指定したエラーメッセージを設定する、のいずれかです。 |
|
| Throttling | ||
| Discard unchanged with heartbeat | 定義された時間内(秒)に変更がない場合、値を破棄します。 秒数の指定には正の整数値を使用できます(最小 1 秒)。この欄では時間サフィックスを使用できます(例: 30s, 1m, 2h, 1d)。この欄ではユーザーマクロと低レベルディスカバリマクロを使用できます。 ディスカバリアイテムに指定できるスロットリングオプションは 1 つだけです。 例: 1m。同一のテキストが 60 秒以内にこのルールへ 2 回渡された場合、破棄されます。Note: アイテムプロトタイプを変更してもスロットリングはリセットされません。スロットリングがリセットされるのは、前処理ステップが変更された場合のみです。 |
|
| Prometheus | ||
| Prometheus to JSON | 必要な Prometheus メトリクスを JSON に変換します。 詳細は、Prometheus チェック を参照してください。 |
|
このディスカバリルールがテンプレート経由でホストに適用されている場合、このタブの内容は読み取り専用になります。
カスタムマクロ
LLDマクロ タブでは、カスタムの低レベルディスカバリマクロを指定できます。
カスタムマクロは、返された JSON に必要なマクロがすでに定義されていない場合に便利です。
たとえば、次のようなケースです。
- ファイルシステムディスカバリ用のネイティブな
vfs.fs.discoveryキーは、{#FSNAME}、{#FSTYPE}などの事前定義済み LLD マクロを含む JSON を返します。
これらのマクロは、アイテム、トリガープロトタイプ(このページの後続セクションを参照)で直接使用できます。カスタムマクロを定義する必要はありません。 vfs.fs.getエージェントアイテムも filesystem data を含む JSON を返しますが、事前定義済みの LLD マクロは含まれません。
この場合は、マクロを自分で定義し、JSONPath を使用して JSON 内の値にマッピングできます。

抽出された値は、ディスカバーされたアイテム、トリガーなどで使用できます。
値は、ディスカバリの結果と、これまでに実行された前処理ステップの結果から抽出されることに注意してください。
| Parameter | Description |
|---|---|
| LLD macro | 次の構文を使用する低レベルディスカバリマクロの名前: {#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 より前の低レベルディスカバリ実装との後方互換性のため)。 |
フィルター
フィルターは、条件に一致するエンティティに対してのみ、実際のアイテム、トリガー、およびグラフを生成するために使用できます。
Filters タブには、ディスカバリ値をフィルタリングできるディスカバリルールのフィルター定義が含まれています。

| Parameter | Description |
|---|---|
| Type of calculation | フィルターの計算には、次のオプションを使用できます: And - すべてのフィルターを通過する必要があります; Or - 1つのフィルターが通過すれば十分です; And/Or - 異なるマクロ名には And を、同じマクロ名には Or を使用します; Custom expression - フィルターの独自の計算式を定義できます。式には一覧内のすべてのフィルターを含める必要があります。255文字までです。 |
| Filters | 次のフィルター条件演算子を使用できます: matches、does not match、exists、does not exist。 Matches および does not match 演算子は Perl Compatible Regular Expression (PCRE) を想定しています。 Regular expression フィールドには、正規表現を入力するか、グローバルな regular expression を参照できます。 Exists および does not exist 演算子を使用すると、応答内に指定した LLD マクロが存在するかどうかに基づいてエンティティをフィルタリングできます。 フィルター内のマクロが応答に含まれていない場合、そのエンティティは無視されます。ただし、そのマクロに対して "does not exist" 条件が指定されている場合は除きます。 マクロの欠如が式の結果に影響する場合は警告が表示されます。たとえば、 {#B} が次の式で欠落している場合:{#A} matches 1 and {#B} matches 2 - 警告が表示されます{#A} matches 1 or {#B} matches 2 - 警告は表示されません。 |
たとえば、C:, D:, E: のファイルシステムだけに関心がある場合は、Macro フィールドに {#FSNAME} を、Regular expression フィールドに ^C|^D|^E を指定します。
フィルタリングは、{#FSTYPE} マクロを使用してファイルシステムタイプでも可能です(例: ^ext|^reiserfs)。また、{#FSDRIVETYPE} マクロを使用してドライブタイプでも可能です(Windows エージェントでのみサポート、例: fixed)。
正規表現をテストするには、たとえば grep -E を使用できます。
for f in ext2 nfs reiserfs smbfs;
do echo $f | grep -E '^ext|^reiserfs' || echo "SKIP: $f";
done
LLD ルールで使用する正規表現に誤りや টাইポがあると(たとえば、"File systems for discovery" の正規表現が不正な場合)、多数のホストに対して、数千件の設定要素、履歴値、イベントが削除される可能性があります。
ファイルシステム名が大文字小文字のみ異なる場合に正しくディスカバリするには、MySQL の Zabbix データベースを大文字小文字を区別する設定で作成する必要があります。
上書き
Overrides タブでは、検出されたオブジェクトのうち、指定した条件に一致するものに対して、アイテム、トリガー、グラフ、ホストのプロトタイプ、またはそれらの属性を変更するルールを設定できます。

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

必須パラメータには赤いアスタリスクが付いています。
| Parameter | Description |
|---|---|
| Name | 一意の(LLD ルールごとの)上書き名。 |
| If filter matches | フィルター条件が満たされたときに、次の上書きを処理するかどうかを定義します: Continue overrides - 後続の上書きが処理されます。 Stop processing - 先行する操作(存在する場合)とこの上書きの操作が実行され、後続の上書きは一致した LLD 行に対して無視されます。 |
| Filters | 上書きをどの検出済みエンティティに適用するかを決定します。上書きフィルターは、検出ルールの filters の後に処理され、同じ機能を持ちます。 |
| Operations | 上書き操作は次の詳細で表示されます: Condition - オブジェクトタイプと、オブジェクト名に対して満たすべき条件。例: Trigger prototype が Disk space is low (used > 50%) と等しくない。 Action - 操作を編集および削除するためのリンクが表示されます。 |
操作の設定
新しい操作の詳細を設定するには、Operations ブロックの
をクリックします。
既存の操作を編集するには、操作の横にある
をクリックします。
操作の詳細を編集できるポップアップウィンドウが開きます。

| Parameter | Description | ||
|---|---|---|---|
| Object | 4 種類のオブジェクトを使用できます: アイテムプロトタイプ トリガープロトタイプ グラフプロトタイプ ホストプロトタイプ |
||
| 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 - アイテムの更新間隔。User macros、LLD macros、および time suffixes(例: 30s、1m、2h、1d)がサポートされます(LLD macro のサポートは Zabbix 7.0.27 で復元されました)。Custom interval を使用する場合は 0 に設定してください。 Custom interval - をクリックして、柔軟な間隔/スケジュール間隔を指定します。詳細は Custom intervals を参照してください。 |
||
| History | チェックボックスをオンにすると、アイテムの履歴保存期間を変更するためのボタンが表示されます: Do not store - 選択すると、履歴は保存されません。 Store up to - 選択すると、右側に保存期間を指定する入力欄が表示されます。User macros と LLD macros がサポートされます(LLD macro のサポートは Zabbix 7.0.27 で復元されました)。 |
||
| Trends | チェックボックスをオンにすると、アイテムのトレンド保存期間を変更するためのボタンが表示されます: Do not store - 選択すると、トレンドは保存されません。 Store up to - 選択すると、右側に保存期間を指定する入力欄が表示されます。User macros と LLD macros がサポートされます(LLD macro のサポートは Zabbix 7.0.27 で復元されました)。 |
||
| Tags | チェックボックスをオンにすると、タグと値のペアを指定するための新しいブロックが表示されます。User macros と LLD macros がサポートされます。 これらのタグは、タグ名が一致していても、アイテムプロトタイプで指定されたタグに追加されます。 |
||
| Object: Trigger prototype | |||
| Create enabled | チェックボックスをオンにすると、元のトリガープロトタイプ設定を上書きするためのボタンが表示されます: Yes - トリガーは有効な状態で追加されます。 No - トリガーは検出されたエンティティに追加されますが、無効な状態になります。 |
||
| Discover | チェックボックスをオンにすると、元のトリガープロトタイプ設定を上書きするためのボタンが表示されます: Yes - トリガーが追加されます。 No - トリガーは追加されません。 |
||
| Severity | チェックボックスをオンにすると、トリガーの深刻度ボタンが表示され、トリガーの深刻度を変更できます。 | ||
| Tags | チェックボックスをオンにすると、タグと値のペアを指定するための新しいブロックが表示されます。User macros と LLD macros がサポートされます。 これらのタグは、タグ名が一致していても、トリガープロトタイプで指定されたタグに追加されます。 |
||
| Object: Graph prototype | |||
| Discover | チェックボックスをオンにすると、元のグラフプロトタイプ設定を上書きするためのボタンが表示されます: Yes - グラフが追加されます。 No - グラフは追加されません。 |
||
| Object: Host prototype | |||
| Create enabled | チェックボックスをオンにすると、元のホストプロトタイプ設定を上書きするためのボタンが表示されます: Yes - ホストは有効な状態で作成されます。 No - ホストは無効な状態で作成されます。 |
||
| Discover | チェックボックスをオンにすると、元のホストプロトタイプ設定を上書きするためのボタンが表示されます: Yes - ホストが検出されます。 No - ホストは検出されません。 |
||
| Link templates | チェックボックスをオンにすると、テンプレートを指定する入力欄が表示されます。テンプレート名を入力し始めるか、フィールドの横にある Select をクリックして、ポップアップウィンドウの一覧からテンプレートを選択します。 この上書きで指定したテンプレートは、ホストプロトタイプにすでにリンクされているすべてのテンプレートに追加されます。 |
||
| Tags | チェックボックスをオンにすると、タグと値のペアを指定するための新しいブロックが表示されます。User macros と LLD macros がサポートされます。 これらのタグは、タグ名が一致していても、ホストプロトタイプで指定されたタグに追加されます。 |
||
| Host inventory | チェックボックスをオンにすると、ホストプロトタイプに対して異なるインベントリ mode を選択するためのボタンが表示されます: Disabled - ホストインベントリを入力しない Manual - 手動で詳細を入力する Automated - 収集したメトリクスに基づいてホストインベントリデータを自動入力する。 |
||
フォームのボタン
フォームの下部にあるボタンでは、いくつかの操作を実行できます。
![]() |
ディスカバリルールを追加します。このボタンは、新しいディスカバリルールでのみ使用できます。 |
![]() |
ディスカバリルールのプロパティを更新します。このボタンは、既存のディスカバリルールでのみ使用できます。 |
![]() |
現在のディスカバリルールのプロパティに基づいて、別のディスカバリルールを作成します。 |
![]() |
ディスカバリルールに基づいて、ただちにディスカバリを実行します。ディスカバリルールは、すでに存在している必要があります。詳細はこちらを参照してください。 注:ただちにディスカバリを実行した場合、設定キャッシュは更新されないため、ディスカバリルール設定に対するごく最近の変更は結果に反映されません。 |
![]() |
ディスカバリルールの設定をテストします。このボタンを使用すると、変更を永続的に適用することなく、設定内容(接続性やパラメータの正確性など)を確認できます。 |
![]() |
ディスカバリルールを削除します。 |
![]() |
ディスカバリルールのプロパティの編集をキャンセルします。 |
検出されたエンティティ
以下のスクリーンショットは、検出されたアイテム、トリガー、グラフがホストの設定でどのように表示されるかを示しています。
検出されたエンティティには、それらの元となったディスカバリルールへのオレンジ色のリンクが接頭表示されます。

同じ一意性条件を持つ既存のエンティティがすでに存在する場合、検出されたエンティティは作成されないことに注意してください。例えば、同じキーを持つアイテムや同じ名前を持つグラフなどです。
この場合、Webインターフェースには、ローレベルディスカバリルールが特定のエンティティを作成できなかったことを示すエラーメッセージが表示されます。
ただし、エンティティを作成できずスキップされたものがあっても、ディスカバリルール自体が未サポートになることはありません。
ディスカバリルールは引き続き他のエンティティの作成/更新を行います。
検出されたエンティティ(ホスト、ファイルシステム、インターフェースなど)が検出されなくなった場合(またはフィルターを通過しなくなった場合)、それに基づいて作成されたエンティティは自動的に無効化され、最終的に削除されることがあります。
失われたリソースは、Disable lost resources パラメータの値に基づいて自動的に無効化されることがあります。
これは、失われたホスト、アイテム、トリガーに影響します。
失われたリソースは、Delete lost resources パラメータの値に基づいて自動的に削除されることがあります。
これは、失われたホスト、ホストグループ、アイテム、トリガー、グラフに影響します。
検出されたエンティティが「Not discovered anymore」になると、エンティティ一覧に有効期間インジケーターが表示されます。
その上にマウスポインターを移動すると、状態の詳細を示すメッセージが表示されます。

エンティティが削除対象としてマークされていても、想定された時刻に削除されなかった場合(ディスカバリルールまたはアイテムのホストが無効な場合)、次回ディスカバリルールが処理されたときに削除されます。
削除対象としてマークされた他のエンティティを含むエンティティは、ディスカバリルールレベルで変更されても更新されません。
例えば、LLDベースのトリガーは、削除対象としてマークされたアイテムを含んでいる場合、更新されません。


その他のディスカバリの種類
その他の標準搭載のディスカバリの詳細および実施方法については、以下のセクションを参照してください。
- ネットワークインターフェースのディスカバリ
- CPUおよびCPUコアのディスカバリ
- SNMP OIDのディスカバリ
- JMXオブジェクトのディスカバリ
- ODBC SQLクエリを使用したディスカバリ
- Windowsサービスのディスカバリ
- Zabbixにおけるホストインターフェースのディスカバリ
ディスカバリアイテムのJSON形式の詳細、および独自のファイルシステムディスカバラをPerlスクリプトとして実装する方法の例については、カスタムLLDルールの作成を参照してください。






