1 アイテムの作成

概要

Zabbixフロントエンドでアイテムを作成するには、以下の手順を実行します。

  • データ収集 > ホスト に移動します
  • ホストの行でアイテムをクリックします
  • 画面右上のアイテムの作成をクリックします
  • フォームにアイテムのパラメータを入力します

既存のアイテムを開き、クローンボタンを押して別名で保存することで、アイテムを作成することもできます。

設定

アイテムタブには、一般的なアイテム属性が含まれています。

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

パラメータ 説明
名前 アイテム名。
ユーザーマクロがサポートされています。
タイプ アイテムタイプ。個別のitem typeセクションを参照してください。
キー アイテムキー(最大2048文字)。
サポートされているitem keysは、個別のアイテムタイプセクションで確認できます。
キーは1つのホスト内で一意である必要があります。
キータイプが「Zabbixエージェント」、「Zabbixエージェント(アクティブ)」または「シンプルチェック」の場合、キー値はZabbixエージェントまたはZabbixサーバーでサポートされている必要があります。
また、正しいkey formatも参照してください。
情報の型 アイテム値を検証し、データベースに保存するために使用されるデータ型(変換後も含む):
数値(整数) - 64ビット符号なし整数;
数値(浮動小数点) - 64ビット浮動小数点数;
文字列 - 短いテキスト;
ログ - ログプロパティ(タイムスタンプ、ソース、重大度、ログイベントID)の有無にかかわらず長いテキスト;
テキスト - 長いテキスト;
バイナリ - バイナリ値(従属アイテムのみサポート);
JSON - 構造化されたJSONデータ、データベースにネイティブに保存(計算アイテムではサポートされません)。
バイナリまたはJSONデータ型で値を返すアイテムは、計算アイテムの式やトリガー式ではサポートされません。
データ型ごとの保存制限やデータベースバックエンドごとの制限については、アイテムデータの制限を参照してください。
特定の形式でデータを返すアイテムの場合、対応するデータ型が自動的に選択されます。たとえば、system.cpu.loadsystem.cpu.utilはどちらも64ビット浮動小数点数を返すため、数値(浮動小数点)が自動的に選択されます。
ホストインターフェース ホストインターフェースを選択します。このフィールドは、ホストレベルでアイテムを編集する場合に利用できます。
単位 単位記号が設定されている場合、Zabbixは受信したアイテム値に後処理を適用し、指定された単位の接尾辞を付けて表示します。
特別な書式設定があるサポートされている単位記号(受信したアイテム値→表示値の例):
B - バイト(1024→1 KB)
Bps - バイト/秒(1024→1 KBps)
s - 秒、最大3つの最大非ゼロ時間単位で表示(881764→10d 4h 56m)
uptime - hh:mm:ssまたはN日、hh:mm:ssで経過時間を表示(881764→10 days, 04:56:04)
unixtime - Unixタイムスタンプ、yyyy.mm.dd hh:mm:ss形式で表示(881764→1970-01-11 04:56:04 AM);正しい書式設定のためには、受信したアイテム値が数値(整数)である必要があります。
その他の単位(Hz、Wなど)の場合、受信値が1000を超えると1000で割られ、対応する接頭辞が付けられて表示されます(5000→5 KHz、881764→881.76 KW)。
単位記号の前に「!」を付けると、単位変換と接頭辞付与が無効になります(1024 !B→1024 B、61 !s→61 s)。
単位記号や単位変換の詳細や例については、アイテム値の接尾辞を参照してください。
更新間隔 このアイテムの新しい値をN秒ごとに取得します。最大許容更新間隔は86400秒(1日)です。
時間の接尾辞がサポートされています(例:30s、1m、2h、1d)。
ユーザーマクロがサポートされています。
1つのマクロでフィールド全体を埋める必要があります。フィールド内の複数のマクロやテキストと混在したマクロはサポートされていません。
: カスタム間隔が非ゼロ値で存在する場合のみ、更新間隔を「0」に設定できます。「0」に設定し、非ゼロ値のカスタム間隔(柔軟またはスケジュール)が存在する場合、アイテムはカスタム間隔の期間中にポーリングされます。
: アイテムがアクティブになった後や更新間隔が変更された後の最初のアイテムポーリングは、設定値より早く発生する場合があります。
新しいアイテムは、作成から60秒以内にチェックされます。ただし、スケジューリングまたは柔軟な更新間隔があり、更新間隔が0に設定されている場合は除きます。
既存のパッシブアイテムは、今すぐ実行 ボタンを押すことで即座に値をポーリングできます。
カスタム間隔 アイテムチェックのカスタムルールを作成できます:
柔軟 - 更新間隔の例外を作成(異なる頻度の間隔)。
スケジューリング - カスタムポーリングスケジュールを作成。
詳細はカスタム間隔を参照してください。
間隔フィールドでは時間の接尾辞がサポートされています(例:30s、1m、2h、1d)。
ユーザーマクロがサポートされています。
1つのマクロでフィールド全体を埋める必要があります。フィールド内の複数のマクロやテキストと混在したマクロはサポートされていません。
タイムアウト アイテムチェックのタイムアウトを設定します(サポートされているアイテムタイプで利用可能)。タイムアウトオプションを選択:
グローバル - プロキシ/グローバルタイムアウトが使用されます(グレー表示のタイムアウトフィールドに表示)。
上書き - カスタムタイムアウトが使用されます(タイムアウトフィールドで設定;許容範囲:1~600秒)。時間の接尾辞(例:30s、1m)やユーザーマクロがサポートされています。
タイムアウトリンクをクリックすると、プロキシタイムアウトやグローバルタイムアウト(プロキシ未使用時)を設定できます。タイムアウトリンクは、管理 > 一般または管理 > プロキシWebインターフェースセクションへの権限を持つスーパ管理者タイプのユーザーにのみ表示されます。
ヒストリ 次のいずれかを選択:
保存しない - アイテムのヒストリは保存されません。従属アイテムのみがヒストリを保持する必要があるマスターアイテムに便利です。
この設定は、グローバルハウスキーパー設定で上書きできません。
最大保存期間 - データベースに詳細なヒストリを保持する期間を指定します(1時間~25年)。古いデータはハウスキーパーによって削除されます。秒単位で保存されます。
時間の接尾辞がサポートされています(例:2h、1d)。ユーザーマクロがサポートされています。
最大保存期間の値は、管理 > ハウスキーピングでグローバルに上書きできます。
グローバルな上書き設定が存在する場合、オレンジ色の情報アイコンが表示されます。マウスを合わせると、警告メッセージ(例:グローバルハウスキーパー設定で上書きされています(1d))が表示されます。
データベース内の値のヒストリサイズを小さくするために、記録値の保存期間はできるだけ短くすることを推奨します。長期間の値のヒストリを保存する代わりに、トレンドデータを長期間保存できます。
また、ヒストリとトレンドも参照してください。
トレンド 次のいずれかを選択:
保存しない - トレンドは保存されません。
この設定は、グローバルハウスキーパー設定で上書きできません。
最大保存期間 - データベースに集計(1時間ごとの最小、最大、平均、カウント)ヒストリを保持する期間を指定します(1日~25年)。古いデータはハウスキーパーによって削除されます。秒単位で保存されます。
時間の接尾辞がサポートされています(例:24h、1d)。ユーザーマクロがサポートされています。
最大保存期間の値は、管理 > ハウスキーピングでグローバルに上書きできます。
グローバルな上書き設定が存在する場合、オレンジ色の情報アイコンが表示されます。マウスを合わせると、警告メッセージ(例:グローバルハウスキーパー設定で上書きされています(7d))が表示されます。
: トレンドの保存は、数値以外のデータ(文字列、ログ、テキスト)には利用できません。
また、ヒストリとトレンドも参照してください。
値のマッピング このアイテムに値のマッピングを適用します。値のマッピングは受信値を変更せず、表示のみを目的としています。
数値(整数)数値(浮動小数点)文字列アイテムで動作します。
例:「Windowsサービスの状態」など。
ログ時刻の書式 ログタイプのアイテムのみで利用可能。サポートされているプレースホルダー:
y: 年(1970-2038)
M: 月(01-12)
d: 日(01-31)
h: 時(00-23)
m: 分(00-59)
s: 秒(00-59)
空白の場合、タイムスタンプはUnix時間で0(1970年1月1日)に設定されます。
たとえば、Zabbixエージェントのログファイルの次の行を考えてみます:
" 23480:20100328:154718.045 Zabbix agent started. Zabbix 1.8.2 (revision 11211)."
この行は、PIDの6文字分、日付、時刻、メッセージの残りの部分で始まります。
この行のログ時刻の書式は「pppppp:yyyyMMdd:hhmmss」となります。
「p」や「:」はプレースホルダーであり、「yMdhms」以外の任意の文字にできます。
ホストインベントリフィールドを自動入力 アイテムの値が入力されるホストインベントリフィールドを選択できます。これは、ホストの自動インベントリが有効になっていて、数値(整数)数値(浮動小数点)文字列テキストアイテムで動作します。
説明 アイテムの説明を入力します。ユーザーマクロがサポートされています。
有効 チェックボックスをオンにすると、アイテムが有効になり、処理されます。
アイテムを無効にすると、直ちにヒストリキャッシュから削除されます(ただし、ログの最終値は保持されます)。
最新データ リンクをクリックすると、アイテムの最新データを表示できます。
このリンクは、既存のアイテムを編集する場合のみ利用できます。

アイテムタイプ固有のフィールドは該当ページで説明されています。

既存のテンプレートレベルのアイテムをホストレベルで編集する場合、多くのフィールドは読み取り専用です。 フォームヘッダーのリンクを使用してテンプレートレベルに移動し、そこで編集できますが、テンプレートレベルでの変更は、そのテンプレートがリンクされているすべてのホストのアイテムに影響することに注意してください。

タグタブでは、アイテムレベルのタグを定義できます。

アイテム値の事前処理

事前処理タブでは、受信した値に対する変換ルールを定義できます。

アイテムのテスト

アイテムのテストを行うには、サーバーとプロキシのシステム時刻が同期されていることを確認してください。 サーバーの時刻が遅れている場合、アイテムのテストで「The task has been expired.」というエラーメッセージが返されることがあります。 ただし、サーバーとプロキシで異なるタイムゾーンを設定しても、テスト結果には影響しません。

アイテムをテストし、正しく設定されていれば実際の値を取得することができます。 アイテムを保存する前でもテストを行うことができます。

ホストおよびテンプレートのアイテム、アイテムプロトタイプ、低レベルディスカバリールールでテストが可能です。 アクティブアイテムではテストはできません。

アイテムのテストは、以下のパッシブアイテムタイプで利用できます:

  • Zabbixエージェント
  • SNMPエージェント (v1, v2, v3)
  • IPMIエージェント
  • SSHチェック
  • Telnetチェック
  • JMXエージェント
  • シンプルチェック(icmpping*vmware.*アイテムを除く)
  • Zabbix内部
  • 計算アイテム
  • 外部チェック
  • データベースモニター
  • HTTPエージェント
  • スクリプト
  • ブラウザ

アイテムをテストするには、アイテム設定フォームの下部にあるテストボタンをクリックします。 テストできないアイテム(アクティブチェックや除外されたシンプルチェックなど)では、テストボタンは無効になります。

アイテムのテストフォームには、必要なホストパラメータ(ホストアドレス、ポート、サーバー/プロキシでのテスト(プロキシ名))や、アイテム固有の詳細(SNMPv2コミュニティやSNMPv3セキュリティ認証情報など)のフィールドがあります。 これらのフィールドはコンテキストに応じて変化します:

  • エージェントを必要とするアイテムの場合、ホストの選択されたエージェントインターフェースから情報を取得して値が自動入力されます。
  • テンプレートアイテムの場合は、値を手動で入力する必要があります。
  • プレーンテキストのマクロ値は解決されます。
  • 値(または値の一部)がシークレットまたはVaultマクロであるフィールドは空白となり、手動で入力する必要があります。 アイテムパラメータにシークレットマクロ値が含まれている場合、次の警告メッセージが表示されます:「アイテムにシークレット値を持つユーザー定義マクロが含まれています。これらのマクロの値は手動で入力する必要があります。」
  • アイテムタイプのコンテキストで不要な場合はフィールドが無効になります(例: 計算アイテムではホストアドレスフィールドやプロキシフィールドが無効)

アイテムをテストするには、値の取得をクリックします。 値が正常に取得されると、フィールドに入力され、現在の値(存在する場合)は前回の値フィールドに移動し、前回との差フィールド(2つの値(クリック)の時間差)も計算されます。また、取得した値に"\n\r"が含まれている場合はEOLシーケンスを検出してCRLFに切り替えます。

値の取得とテストをクリックすると、前処理のテストが行われます。

ホストから取得した値およびテスト結果は、Webインターフェースに送信される際に最大512KBまでに切り詰められます。 テスト結果が切り詰められた場合は警告アイコンが表示され、詳細はアイコンにマウスオーバーしてください。 値が切り詰められると、連続したテストで大きな値(例: JSON)を比較する際にデータ型の検証に失敗する場合があります。その場合はエラーメッセージが表示されます。 512KBを超えるデータもZabbixサーバーでは完全に処理されることに注意してください。

設定が正しくない場合は、考えられる原因を説明するエラーメッセージが表示されます。

ホストから正常に取得した値は、前処理ステップのテストにも利用できます。

フォームのボタン

フォームの下部にあるボタンで、いくつかの操作を行うことができます。

アイテムの追加。このボタンは新規のアイテムの時のみ使用できます。
アイテムのプロパティの更新。
現在のアイテムプロパティをベースにして別のアイテムを作成。
アイテムの値を取得。アイテムのタイプがパッシブなものだけ対応しています。(詳細参照)
注意 値の取得時には設定キャッシュは更新されません。つまり直近のアイテムの設定変更が反映されません。
値を取得できるかのテスト実行。
アイテムのヒストリとトレンドを削除。
アイテムの削除。
アイテムのプロパティ変更をキャンセル。

アイテムデータの制限

アイテムデータの制限は、アイテムデータの型とデータベースバックエンドによって異なります。

数値(符号なし)値はそのまま保存されます。 浮動小数点値が受信された場合は、整数部分のみが保存されます(例:1.23 → 1)。

数値(浮動小数点)値はそのまま保存され、約15~17桁の精度をサポートし、範囲は約-1.79E+308~1.79E+308です。 科学的記数法での値もサポートされます(例:1.23E+7、1e308、1.1E-4)。

テキスト値は、データベースの値型の制限に合わせて保存前に切り捨てられます。

データベース 情報の型
キャラクター ログ テキスト
MySQL 255文字 65536バイト 65536バイト
PostgreSQL 255文字 65536文字 65536文字
SQLite(Zabbixプロキシのみ) 255文字 65536文字 65536文字

バイナリ値は16MiB(16777216バイト)に制限されています。 この制限を超える値は破棄され、対応するエラーがWebインターフェースに表示されます。

JSONデータ型の値は128MiB(134217728バイト)に制限されています。 この制限を超える値は破棄され、対応するエラーがWebインターフェースに表示されます。 MySQL/MariaDBの場合、history_jsonテーブル(JSON値の保存に使用)に日次パーティションを設定することを検討してください。このテーブルは急速に大きくなり、ハウスキーパーを長時間ロックする可能性があります。 1MiB以上の大きなJSON値を扱う場合は、大きなJSON値のサポートのためのシステム設定方法をご覧ください。

Zabbixがアイテムデータをデータベースに書き込む際は、INSERTクエリを使用し、それらを(DebugLevel4または5に設定されている場合)ログに記録します。 大きなログエントリは64KBに切り捨てられます。

カスタムスクリプトの制限

使用可能なカスタムスクリプトの長さは、使用するデータベースによって異なります。

データベース 文字数の上限 バイト数の上限
MySQL 65535 65535
PostgreSQL 65535 制限なし
SQLite (Zabbixプロキシのみ) 65535 制限なし

アイテムタイムアウト

アイテムタイムアウトは、Zabbixがチェックを失敗として中止するまでの待機時間を指定します。

タイムアウトに達すると、データ取得が完了していなくてもチェックは中止されます。データが部分的に受信された場合、アイテムはサポート対象外となり、エラーメッセージが記録されます(例えば、SNMPチェックで複数のOIDのうち1つだけが正常に収集された場合など)。

多くのアイテムタイプでは、柔軟なアイテムタイムアウトを設定できます:

  • 単一アイテムごと
  • アイテムタイプごと(プロキシレベル)
  • アイテムタイプごと(グローバルレベル)

単一アイテムごとのカスタムタイムアウトは、特定のアイテムに対してより長いタイムアウトを指定し、他のアイテムのタイムアウトを低く保ちたい場合に便利です。

タイムアウトの優先順位

  1. 単一アイテムのタイムアウトが他のタイムアウトより優先されます。
  2. プロキシレベルのタイムアウトがグローバルタイムアウトより優先されます。

Zabbixサーバーまたはプロキシの設定からのタイムアウトは、柔軟なタイムアウトが設定されているチェックには影響しません

柔軟なタイムアウトのサポート

柔軟なアイテムタイムアウトは、以下のアイテムタイプでサポートされています:

サポートされていないアイテム

サポートされていないアイテムは、サポート外のステータスとして報告され、標準の更新間隔で再チェックされます。

アイテムの値が何らかの理由で取得できない場合(例:接続エラー、アイテムを処理するポーラーが設定されていない場合)、アイテムはサポート外になります。 さらに、履歴データを受信しないアイテムはサポート外のステータスのままです。 これは想定された動作であり、アイテムは新しい有効な履歴データを受信したときにのみ通常のステータスに移行します。

問題と同様に、サポート外のアイテムも新しいデータが受信されたときにのみ再評価されます。たとえそのアイテムに履歴データがもう存在しなくてもです。 言い換えれば、アイテムとトリガーは新しいデータを受信したときにのみ状態が変化します。 ただし、トリガー式に日付と時刻nodata()関数が含まれている場合、トリガーは30秒ごとに再計算されます(詳細はトリガーの計算時間を参照してください)。