Sidebar

Zabbix Summit 2022
Register for Zabbix Summit 2022

6 タグ付け

概要

Zabbixには様々なエンティティにタグを付けることができるオプションがあります。タグは以下のものに定義することができます:

  • テンプレート
  • ホスト
  • item
  • web シナリオ
  • トリガー
  • サービス
  • テンプレート items および triggers
  • ホスト, item と trigger プロトタイプ

タグにはいくつかの用途がありますが、特にイベントをマークするのに適しています。
もしエンティティにタグが付けられたら、対応する新しいイベントもそれに応じてマークされます:

  • タグ付けされたテンプレート - このテンプレートの関連エンティティ(item、トリガーなど)によって作成された すべてのホストの問題がマークされます。
  • タグ付きホスト - ホストのあらゆる問題がマークされます。
  • タグ付きアイテム、Web シナリオ - この item、Web シナリオのあらゆるデータ/問題がマークされます。
  • タグ付きトリガー - このトリガーのすべての問題がマークされます。

問題のあるイベントは、テンプレート、ホスト、item、Web シナリオ、トリガーのチェーン全体から すべてのタグを引き継ぎます。
完全に同一の tag:value の組み合わせ(マクロを解決した後)は、イベントをマークする際に重複するのではなく、
1つにマージされます。

カスタムイベントタグを持つことで、より柔軟な対応が可能になります。重要なのは、イベントタグに基づいてイベントを
correlated することができることです。他の用途では、タグ付けされたイベントに基づいて
アクションを定義することができます。item の問題は、タグに基づいてグループ化することができます。
問題タグは、問題をservicesにマップするために使用することもできます。

タグ付けは、タグ名のペアとして実現されます。名前だけを使うことも、値と対にすることもできます。

MySQL, Service:MySQL, Services, Services:Customer, Applications, Application:Java, Priority:High 

エンティティ(テンプレート、ホスト、item、Web シナリオ、トリガー、イベント)は、同じ名前で異なる値 のタグを
付けることができますが、これらのタグは '重複したもの' とはみなされません。同様に、値のないタグと値のある同じタグを
同時に使用することができます。

使用例

この機能の使用例としては、以下のようなものがあります:

  1. フロントエンドでトリガーイベントをマーク
    • トリガーレベルでタグを定義します。
    • MonitoringProblems で、すべてのトリガー問題がこれらのタグでどのようにマークされるかを確認します。
  2. テンプレートに継承されるすべての問題をマーク
    • テンプレートレベルでタグを定義します。(例:'App=MySQL')
    • このテンプレートからトリガーによって作成されたホスト問題が、どのようにMonitoringProblemsでこれらのタグで マークされるかを確認します。
  3. すべてのホストの問題をマーク
    • ホストレベルで、例えば'Service=JIRA'のようなタグを定義します。
    • MonitoringProblems で、ホストトリガーのすべての問題がこれらのタグでどのようにマークされるかを確認します。
  4. 関連するアイテムのグループ化
    • 例えば'MySQL'のように、アイテムレベルでタグを定義します。
    • タグフィルターを使用して、Latest data で 'MySQL' としてタグ付けされたすべてのアイテムを確認します。
  5. ログファイル内の問題を特定し、個別にクローズ
    • {ITEM.VALUE<N>}.regsub()}マクロによる値抽出を使用してイベントを特定するタグを、ログトリガーに定義します。
    • トリガーの設定で、複数の問題のイベント生成モードを持ちます。
    • トリガー設定で、even correlation を使います: OKイベントがマッチするイベントだけを 閉じるというオプションを選び、マッチングのためのタグを選択します。
    • タグで作成され、個別に閉じられた問題イベントを参照してください。
  6. 通知のフィルタリングに使用
    • トリガーレベルでタグを定義し、異なるタグでイベントをマークします。
    • アクションコンディションでタグフィルタリングを使用し、タグデータに一致するイベントのみ通知を受けることができます。
  7. item の値から抽出した情報をタグの値として利用
    • タグ値に {ITEM.VALUE<N>}.regsub()} マクロを使用します。
    • item 値から抽出したデータとして、MonitoringProblems のタグ値を参照します。
  8. 通知で問題をよりよく特定
    • トリガーレベルでタグを定義します。
    • 問題通知で{EVENT.TAGS}マクロを使用します。
    • 通知がどのアプリケーション/サービスに属するかをより簡単に識別できます。
  9. テンプレートレベルでタグを使用し、設定作業を簡素化
    • テンプレートトリガーレベルでタグを定義します。
    • テンプレートトリガーから作成されたすべてのトリガーにこれらのタグが表示されます。
  10. ローレベルディスカバリー(LLD)からタグを使用してトリガーを作成
    • トリガー プロトタイプにタグを定義します。
    • タグの名前または値で LLD マクロを使用します。
    • トリガー プロトタイプから作成されたすべてのトリガーで、これらのタグを参照してください。

設定

タグは、トリガー設定などの専用タブで入力することができます:

マクロのサポート

トリガータグでは、以下のマクロを使用することができます:

  • {ITEM.VALUE}, {ITEM.LASTVALUE}, {HOST.HOST}, {HOST.NAME}, {HOST.CONN}、{HOST.DNS}、{HOST.IP}、{HOST.PORT} および {HOST.ID} マクロは、タグ名またはタグ値を入力するために 使用することができま す。
  • トリガ式で1つまたは複数のホストからホスト・インベントリ値を参照するには、 {INVENTORY.*}[macros] (/manual/appendix/macros/supported_by_location) を使用することができます。
  • User macrosとタグ名/値に対してユーザーマクロコンテキストがサポート されています。ユーザーマクロコンテキストは、ローレベルディスカバリーマクロを含む場合があります。
  • トリガープロトタイプのタグ名/値にローレベルディスカバリーマクロを使用することができます。

トリガーベースの通知では、以下のマクロを使用することができます:

  • {EVENT.TAGS}と{EVENT.RECOVERY.TAGS}マクロは、イベントタグまたは回復イベントタグのカンマ区切りリストに解決されます。
  • {EVENT.TAGSJSON} と {EVENT.RECOVERY.TAGSJSON} マクロは、イベントタグ object または回復イベントタグ オブジェクトを含む JSON 配列に解決されるでしょう。

テンプレート、ホスト、item、Webシナリオで使用できるマクロは次のとおりです:

  • {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} and {HOST.ID} macros
  • {INVENTORY.*} macros
  • User macros
  • アイテムプロトタイプタグにローレベルディスカバリーマクロを使用することができます

ホストプロトタイプタグには、以下のマクロを使用することができます:

  • {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} and {HOST.ID} macros
  • {INVENTORY.*} macros
  • User macros
  • Low-level discovery macros は、ディスカバリープロセス中に解決され、 発見されたホストに追加されるでしょう。
トリガータグのサブストリング抽出

サブストリング抽出は、タグ名またはタグ値を入力するために、マクロ function
- {ITEM.VALUE}, {ITEM.LASTVALUE} によって得られた値に正規表現を適用する - によってサポートされています。
たとえば、以下のようになります:

{{ITEM.VALUE}.regsub(pattern, output)}
       {{ITEM.VALUE}.iregsub(pattern, output)}
       
       {{#LLDMACRO}.regsub(pattern, output)}
       {{#LLDMACRO}.iregsub(pattern, output)}

タグ名、タグ値はマクロ分解後、255文字を超えると255文字にカットされます。

こちらもご参照ください。イベントタグ付けのためのlow-level discovery macrosでマクロ関数を使用すること。

イベントタグの表示

タグが定義されている場合、新しいイベントで確認することができます。

  • MonitoringProblems
  • MonitoringProblemsEvent details
  • MonitoringDashboardProblems widget (問題名の上にマウスを置くと開くポップアップ・ウィンドウ)

タグエントリーは、最初の3つだけが表示されます。3つ以上のタグエントリーがある場合は、3つのドットで表示されます。
この3つのドットの上にマウスを乗せると、すべてのタグエントリーがポップアップウィンドウに表示されます。

タグの表示順は、タグのフィルタリングと、MonitoringProblems または Problems ダッシュボードウィジェットの
フィルタにおける Tag display priority オプションに影響されることに注意してください。