6 タグ付け
概要
タグは、タグ名とタグ値で構成されます。
エンティティにタグを付ける際は、名前だけを使用することも、値と組み合わせて使用することもできます(例:mysql、jira、target:mysql、service:jiraなど)。
タグはさまざまなエンティティに定義できます:
- テンプレート
- ホスト
- アイテム
- Webシナリオ
- トリガー
- サービス
- テンプレートのアイテムおよびトリガー
- ホスト、アイテム、トリガーのプロトタイプ
テンプレート、ホスト、アイテム、トリガー、Webシナリオのリストおよびそのプロトタイプでは、タグ列に通常のタグと継承されたタグの両方が表示されます。 継承タグにマウスを重ねるかクリックすると、「継承されたタグ」というテキストのJavaScriptツールチップが表示されます。 継承タグが通常のタグとしても存在する場合、表示されるリストによって異なるツールチップテキストが表示されます(例: テンプレートリストでは「継承およびテンプレートタグ」、ホストリストでは「継承およびホストタグ」など)。 Webインターフェースの他の場所では、通常のタグと継承タグが一緒に表示されます(重複は削除されます)、アイコンや追加のツールチップテキストは表示されません。
タグの定義に関する一般的な推奨事項や、テンプレート、アイテム、トリガー、ローレベルディスカバリールールに関する具体的なガイダンスについては、公式Zabbixガイドラインを参照してください。
タグには複数の目的がありますが、最も重要なのはイベントのマークです。 エンティティにタグが付けられている場合、タグ付きエンティティに関連する新しいイベントは、そのタグを継承します。 例:
- タグ付きテンプレートの場合 - テンプレートからのトリガーによって作成されたホストの問題は、テンプレートタグを継承します。
- タグ付きホストの場合 - ホストの問題はホストタグを継承します。
- タグ付きアイテム/Webシナリオの場合 - アイテム/Webシナリオの問題はアイテム/Webシナリオタグを継承します。
- タグ付きトリガーの場合 - トリガーによって作成された問題はトリガータグを継承します。
問題イベントは、テンプレート、ホスト、アイテム/Webシナリオ、トリガーというエンティティの全チェーンからすべてのタグを継承します。
同一のタグ:値の組み合わせ(マクロ解決後)は1つにまとめられ、重複が回避されます。
手動クローズによって生成されたリカバリエベントにも、テンプレート、ホスト、アイテム/Webシナリオ、トリガーから継承された解決済みイベントタグが含まれます。
これらのタグは、通知や{EVENT.RECOVERY.TAGS}や{EVENT.RECOVERY.TAGSJSON}などのマクロで利用できます。
カスタムイベントタグは、より柔軟性を提供します。 例:
- イベント相関はイベントタグに基づいて設定できます。
- アクション条件はイベントタグに基づいて設定できます。
- アイテムの問題はイベントタグに基づいてグループ化できます。
- 問題タグは、サービスへの問題のマッピングに使用できます。
エンティティには、同じタグ名でも異なるタグ値でタグを付けることができます(例:component:memoryとcomponent:storage)。
同様に、値のないタグと値付きの同じタグをエンティティに持たせることもできます(例:databaseとdatabase:postgresql)。
このようなタグは重複とは見なされません。
ユースケース
タグ付けの一般的なユースケースは次のとおりです。
-
トリガーイベントをマークする:
- トリガータグを定義します(例:
scope:performance)。 - このトリガーによって作成された問題には、トリガータグが付きます。
- トリガータグを定義します(例:
-
テンプレートから継承された問題をマークする:
- テンプレートタグを定義します(例:
target:mysql)。 - このテンプレートのトリガーによって作成された問題には、テンプレートタグが付きます。
- テンプレートタグを定義します(例:
-
ホストの問題をマークする:
- ホストタグを定義します(例:
service:jira)。 - このホストのトリガーによって作成された問題には、ホストタグが付きます。
- ホストタグを定義します(例:
-
関連するアイテムをフィルタリングする:
- アイテムタグを定義します(例:
component:cpu)。 - Monitoring > Latest data では、
component:cpuタグでアイテムをフィルタリングできます。
- アイテムタグを定義します(例:
-
アイテム値から抽出した情報をタグ値として使用する:
- マクロをタグ値として持つタグを定義します(例:
tag-name:{{ITEM.VALUE<N>}.regsub()})。 - Monitoring > Problems では、問題のタグ値はアイテム値から抽出されたデータに解決されます。
- マクロをタグ値として持つタグを定義します(例:
-
ログファイル内の問題を識別し、個別にクローズする:
-
通知をフィルタリングする:
- トリガータグを定義します(例: trigger1 には
scope:security、trigger2 にはscope:availability)。 - アクション条件 でタグフィルタリングを使用し、タグデータに一致するイベントのみ通知を受け取ります。
- トリガータグを定義します(例: trigger1 には
-
通知内の問題を識別する:
- トリガータグを定義します。
- 問題通知で {EVENT.TAGS} マクロを使用します。
- 問題通知にはトリガータグが含まれるため、通知がどのアプリケーション/サービスに属するかを識別しやすくなります。
-
テンプレートタグを使用して設定作業を簡素化する:
- テンプレートトリガータグを定義します。
- このテンプレートのトリガーから作成されたトリガーには、そのタグが付きます。
-
低レベルディスカバリ(LLD)のタグを持つトリガーを作成する:
- トリガープロトタイプのタグ名または値に LLD マクロを定義します(例:
scope:{#FSNAME})。 - トリガープロトタイプから作成されたトリガーには、そのタグが付きます。
- トリガープロトタイプのタグ名または値に LLD マクロを定義します(例:
-
サービスタグを使用してサービスを一致させる:
-
サービス問題タグを使用してサービスを問題にリンクする:
-
ホストがメンテナンスモードのときに問題を抑制する:
- メンテナンス期間の設定 でタグを定義します。
- 定義されたタグを持つ問題は抑制されます。
-
ユーザーグループにアクセス権を付与する:
- ユーザーグループ設定 でタグを定義します。
- ユーザーグループ内のユーザーは、定義されたタグを持つ問題のみを表示できます。
設定
タグは、トリガーの設定などの専用タブで定義できます。

マクロのサポート
タグ内の組み込みマクロおよびユーザーマクロは、イベント発生時に展開されます。 イベントが発生するまでは、これらのマクロはZabbix Webインターフェースで未展開のまま表示されます。
ローレベルディスカバリマクロは、ディスカバリ処理中に展開されます。
以下のマクロは、トリガーのタグ名および値で使用できます。
- {ITEM.VALUE}, {ITEM.VALUE.AGE}, {ITEM.VALUE.DATE}, {ITEM.VALUE.TIME}, {ITEM.VALUE.TIMESTAMP}, {ITEM.LASTVALUE}, {ITEM.LASTVALUE.AGE}, {ITEM.LASTVALUE.DATE}, {ITEM.LASTVALUE.TIME}, {ITEM.LASTVALUE.TIMESTAMP}, {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT}, および {HOST.ID} の組み込みマクロ
- {INVENTORY.*} の組み込みマクロ(トリガー式内の1つまたは複数のホストのインベントリ値を参照するため)
- ユーザーマクロおよびコンテキスト付きユーザーマクロ(コンテキストにはローレベルディスカバリマクロを含めることができます)
- ローレベルディスカバリマクロ(トリガープロトタイプのタグ内のみ)
以下のマクロは、テンプレート、ホスト、アイテム/Webシナリオのタグ名および値で使用できます。
- {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} および {HOST.ID} の組み込みマクロ
- {INVENTORY.*} の組み込みマクロ
- ユーザーマクロ
- ローレベルディスカバリマクロ(ホストプロトタイプおよびアイテムプロトタイプのタグ内のみ)
以下のマクロは、トリガーベースの通知で使用できます。
- {EVENT.TAGS} および {EVENT.RECOVERY.TAGS} の組み込みマクロ(これらのマクロは、イベントタグまたは復旧イベントタグのカンマ区切りリストに展開されます)
- {EVENT.TAGSJSON} および {EVENT.RECOVERY.TAGSJSON} の組み込みマクロ(これらのマクロは、イベントタグオブジェクトまたは復旧イベントタグオブジェクトを含むJSON配列に展開されます)
トリガータグでの部分文字列の抽出
タグ名またはタグ値の設定では、マクロ関数を使用して部分文字列の抽出をサポートしています。 この関数は、サポートされているマクロによって取得された値に正規表現を適用します。 例えば、次のとおりです。
{{ITEM.VALUE}.regsub(pattern, output)}
{{ITEM.VALUE}.iregsub(pattern, output)}
{{#LLDMACRO}.regsub(pattern, output)}
{{#LLDMACRO}.iregsub(pattern, output)}
マクロ解決後のタグ名または値が255文字を超える場合、255文字に切り詰められます。
関連項目: イベントタグ付けにおけるローレベルディスカバリマクロでのマクロ関数の使用。
イベントタグの表示
タグが定義されている場合、新しいイベントで以下の場所でタグを表示できます:
表示されるタグの順序と数は、監視データ > 障害 または 障害ダッシュボードウィジェットの タグ表示優先度 および タグの表示 フィルタリングオプションによって決まります。 最大3つのタグが表示されます。タグが3つを超える場合は、3つのドットにカーソルを合わせると、すべてのタグがポップアップウィンドウで表示されます。
