6 タグ付け
概要
タグは、タグ名とタグ値で構成されます。
エンティティにタグを付ける際は、名前のみを使用することも、値と組み合わせて使用することもできます(例: mysql、jira、target:mysql、service:jira など)。
タグは、さまざまなエンティティに定義できます。
- テンプレート
- ホスト
- アイテム
- Webシナリオ
- トリガー
- サービス
- テンプレートのアイテムとトリガー
- ホスト、アイテム、トリガーのプロトタイプ
タグの定義に関する一般的な推奨事項、および テンプレート、アイテム、 トリガー、ローレベルディスカバリルール に関する具体的なガイダンスについては、Zabbix公式ガイドラインを参照してください。
タグには複数の用途がありますが、特に重要なのはイベントの識別です。 エンティティにタグが付けられている場合、そのタグ付きエンティティに関連する新しいイベントは、そのタグを継承します。例えば:
- タグ付きテンプレートの場合 - ホストのすべての障害(テンプレートのトリガーによって作成されたもの)は、テンプレートのタグを継承します。
- タグ付きホストの場合 - ホストのすべての障害は、ホストのタグを継承します。
- タグ付きアイテム/Webシナリオの場合 - アイテム/Webシナリオのすべての障害は、アイテム/Webシナリオのタグを継承します。
- タグ付きトリガーの場合 - トリガーによって作成されたすべての障害は、トリガーのタグを継承します。
障害イベントは、テンプレート、ホスト、アイテム/Webシナリオ、トリガーというエンティティのチェーン全体からすべてのタグを継承します。
同一の tag:value の組み合わせ(マクロ解決後)は1つにまとめられるため、重複は回避されます。
カスタムイベントタグにより、より柔軟な運用が可能になります。例えば:
- イベント相関は、イベントタグに基づいて設定できます。
- アクション条件は、イベントタグに基づいて設定できます。
- アイテムの障害は、イベントタグに基づいてグループ化できます。
- 障害タグは、障害をサービスにマッピングするために使用できます。
エンティティには、同じタグ名で異なるタグ値を持つタグを付けることができます(例: 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.LASTVALUE}、{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つまでです。タグがそれより多い場合は、三点リーダーにマウスカーソルを合わせると、ポップアップウィンドウですべてのタグが表示されます。
