1 アイテムの作成

概要

Zabbix Webインターフェースでアイテムを作成するには、次の手順を実行します。

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

既存のアイテムを開き、複製 ボタンをクリックしてから別の名前で保存することでも、アイテムを作成できます。

設定

アイテム タブには、アイテムの一般属性が含まれます。

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

Parameter Description
Name アイテム名。
ユーザーマクロがサポートされています。
Type アイテムタイプ。個別の アイテムタイプ セクションを参照してください。
Key アイテムキー(最大 2048 文字)。
サポートされる アイテムキー は、各アイテムタイプのセクションで確認できます。
キーは単一のホスト内で一意である必要があります。
キータイプが 'Zabbix agent'、'Zabbix agent (active)'、または 'Simple check' の場合、キー値は Zabbix エージェントまたは Zabbix サーバーでサポートされている必要があります。
関連情報: 正しい キー形式
Type of information アイテム値の検証およびデータベースへの保存に使用されるデータ型です。これは、変換 後にも適用されます。
Numeric (unsigned) - 64 ビット符号なし整数;
Numeric (float) - 64 ビット浮動小数点数;
Character - 短いテキスト;
Log - ログ属性(タイムスタンプ、ソース、重要度、ログイベント ID)の有無にかかわらず長いテキスト;
Text - 長いテキスト;
Binary - バイナリ数値(依存アイテムでのみサポート);
JSON - 構造化された JSON データで、データベースにネイティブに保存されます(計算アイテムではサポートされません)。
Binary または JSON データ型の値を返すアイテムは、計算アイテムの式やトリガー式ではサポートされません。
データ型ごとの保存上限とデータベースバックエンドについては、アイテムデータの制限 を参照してください。
単一の特定形式でデータを返すアイテムでは、対応するデータ型が自動的に選択されます。たとえば、system.cpu.loadsystem.cpu.util はどちらも 64 ビット浮動小数点数を返すため、Numeric (float) が自動的に選択されます。
Host interface ホストインターフェースを選択します。このフィールドは、ホストレベルでアイテムを編集する場合に使用できます。
Units 単位記号が設定されている場合、Zabbix は受信したアイテム値に後処理を行い、指定された単位接尾辞付きで表示します。
特別な書式を持つサポート済みの単位記号(および受信アイテム値 → 表示値の例):
B - バイト(1024 → 1 KB)
Bps - 1 秒あたりのバイト数(1024 → 1 KBps)
s - 秒。最大 3 つの最も大きい非ゼロの時間単位で表示されます(881764 → 10d 4h 56m)
uptime - 経過時間を hh:mm:ss または N days, 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)。正しく書式設定するには、受信アイテム値が Numeric (unsigned) である必要があります。
Hz、W などの他の単位では、受信値が 1000 を超えると 1000 で割られ、対応する接頭辞付きで表示されます(5000 → 5 KHz、881764 → 881.76 KW)。
単位記号の前に ! を付けると、単位変換と接頭辞付けは無効になります(1024 !B → 1024 B、61 !s → 61 s)。
単位記号と単位変換の詳細およびその他の例については、アイテム値の接尾辞 を参照してください。
Update interval このアイテムの新しい値を N 秒ごとに取得します。許可される最大更新間隔は 86400 秒(1 日)です。
時間接尾辞 がサポートされています。例: 30s、1m、2h、1d。
ユーザーマクロ がサポートされています。
1 つのマクロでフィールド全体を埋める必要があります。1 つのフィールドに複数のマクロを入れることや、マクロとテキストを混在させることはサポートされていません。
: カスタム間隔に 0 以外の値がある場合にのみ、更新間隔を '0' に設定できます。'0' に設定され、かつ 0 以外の値を持つカスタム間隔(柔軟またはスケジュール)が存在する場合、そのアイテムはカスタム間隔の期間中にポーリングされます。
: アイテムが有効になった直後、または更新間隔を変更した直後の最初のポーリングは、設定値より早く発生する場合があります。
新しいアイテムは、Scheduling または Flexible の更新間隔があり、かつ Update interval が 0 に設定されていない限り、作成後 60 秒以内にチェックされます。
既存のパッシブアイテムは、Execute now ボタン を押すことで、すぐに値を取得できます。
Custom intervals アイテムのチェック用にカスタムルールを作成できます。
Flexible - Update interval の例外(異なる頻度の間隔)を作成します。
Scheduling - カスタムのポーリングスケジュールを作成します。
詳細は カスタム間隔 を参照してください。
Interval フィールドでは 時間接尾辞 がサポートされています。例: 30s、1m、2h、1d。
ユーザーマクロ がサポートされています。
1 つのマクロでフィールド全体を埋める必要があります。1 つのフィールドに複数のマクロを入れることや、マクロとテキストを混在させることはサポートされていません。
Timeout アイテムチェックのタイムアウトを設定します(サポートされている アイテムタイプで使用可能)。タイムアウトオプションを選択します。
Global - プロキシ/グローバルのタイムアウトが使用されます(グレー表示の Timeout フィールドに表示されます)。
Override - カスタムタイムアウトが使用されます(Timeout フィールドで設定。許可範囲: 1 - 600s)。時間接尾辞(例: 30s、1m)および ユーザーマクロ がサポートされています。
Timeouts リンクをクリックすると、プロキシ のタイムアウト、または(プロキシを使用しない場合の)グローバル タイムアウトを設定できます。なお、Timeouts リンクは、Super admin タイプで Administration > General または Administration > Proxies の Webインターフェース セクションへの権限を持つユーザーにのみ表示されます。
History 次のいずれかを選択します。
Do not store - アイテム履歴を保存しません。依存アイテムのみが履歴を保持すればよい場合のマスターアイテムに便利です。
この設定は、グローバルの housekeeper 設定 では上書きできません。
Store up to - データベースに詳細履歴を保持する期間を指定します(1 時間から 25 年)。古いデータは housekeeper により削除されます。秒単位で保存されます。
時間接尾辞 がサポートされています。例: 2h、1d。ユーザーマクロ がサポートされています。
Store up to の値は、Administration > Housekeeping でグローバルに上書きできます。
グローバルの上書き設定が存在する場合、オレンジ色の 情報アイコンが表示されます。マウスを重ねると、たとえば Overridden by global housekeeper settings (1d) のような警告メッセージが表示されます。
データベース内の値履歴サイズを削減するため、記録値は可能な限り短い期間だけ保持することを推奨します。長い値履歴を保存する代わりに、トレンドとしてより長期間のデータを保存できます。
関連情報: 履歴とトレンド
Trends 次のいずれかを選択します。
Do not store - トレンドを保存しません。
この設定は、グローバルの housekeeper 設定 では上書きできません。
Store up to - 集計済み(1 時間ごとの min、max、avg、count)履歴をデータベースに保持する期間を指定します(1 日から 25 年)。古いデータは housekeeper により削除されます。秒単位で保存されます。
時間接尾辞 がサポートされています。例: 24h、1d。ユーザーマクロ がサポートされています。
Store up to の値は、Administration > Housekeeping でグローバルに上書きできます。
グローバルの上書き設定が存在する場合、オレンジ色の 情報アイコンが表示されます。マウスを重ねると、たとえば Overridden by global housekeeper settings (7d) のような警告メッセージが表示されます。
注: 数値以外のデータ(character、log、text)ではトレンドの保持は利用できません。
関連情報: 履歴とトレンド
Value mapping このアイテムに値マッピングを適用します。値マッピング は受信値を変更せず、表示用のみに使用されます。
Numeric(unsigned)Numeric(float)Character アイテムで動作します。
例: "Windows service states"。
Log time format Log タイプのアイテムでのみ使用できます。サポートされるプレースホルダー:
y: Year (1970-2038)
M: Month (01-12)
d: Day (01-31)
h: Hour (00-23)
m: Minute (00-59)
s: Second (00-59)
空欄のままにすると、タイムスタンプは Unix time の 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" 以外の任意の文字を使用できます。
Populates host inventory field アイテムの値を反映するホストインベントリフィールドを選択できます。これは、ホストで自動 インベントリ 収集が有効であり、かつ Numeric(unsigned)Numeric(float)CharacterText アイテムで機能します。
Description アイテムの説明を入力します。ユーザーマクロ がサポートされています。
Enabled チェックボックスをオンにしてアイテムを有効化し、処理対象にします。
アイテムを無効にすると、履歴キャッシュから即座に削除されます(ただし、ログ用に保持される最後の値は除きます)。
Latest data リンクをクリックすると、アイテムの最新データを表示できます。
このリンクは、既存のアイテムを編集している場合にのみ使用できます。

アイテムタイプ固有のフィールドは、対応するページ に記載されています。

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

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

アイテム値の事前処理

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

アイテムのテスト

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

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

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

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

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

アイテムをテストするには、アイテム設定フォーム下部の Test ボタンをクリックします。 Test ボタンは、テストできないアイテム(アクティブチェック、除外された単純チェックなど)では無効になることに注意してください。

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

  • 値は可能な場合に事前入力されます。つまり、エージェントを必要とするアイテムでは、ホストの選択されたエージェントインターフェースから情報を取得します。
  • テンプレートのアイテムでは、値を手動で入力する必要があります。
  • プレーンテキストのマクロ値は解決されます。
  • 値(または値の一部)が secret または Vault マクロであるフィールドは空になり、手動で入力する必要があります。 アイテムパラメータに secret マクロ値が含まれている場合、次の警告メッセージが表示されます: "Item contains user-defined macros with secret values. Values of these macros should be entered manually."
  • アイテムタイプのコンテキストで不要なフィールドは無効になります(例: 計算アイテムではホストアドレスフィールドとプロキシフィールドが無効になります)

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

前処理をテストするには、Get value and test をクリックします。

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

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

ホストから正常に取得した値は、preprocessing steps のテストにも使用できます。

フォームのボタン

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

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

アイテムデータの制限

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

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

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

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

Database Type of information
Character Log Text
MySQL 255 characters 65536 bytes 65536 bytes
PostgreSQL 255 characters 65536 characters 65536 characters
SQLite (only Zabbix proxy) 255 characters 65536 characters 65536 characters

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

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

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

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

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

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

アイテムのタイムアウト

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

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

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

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

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

タイムアウトの優先順位

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

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

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

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

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

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

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

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