アイテムの作成

概要

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

  1. データ収集 > ホストに移動します。
  2. ホストの行にあるアイテムをクリックします。
  3. 画面右上のアイテムの作成をクリックします。
  4. フォームにアイテムのパラメータを入力します。

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

設定

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

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

パラメータ 説明
名前 アイテム名。
ユーザーマクロがサポートされています。
タイプ アイテムのタイプ。各アイテムタイプのセクションを参照してください。
キー アイテムキー(最大2048文字)。
サポートされているアイテムキーは、各アイテムタイプのセクションに記載されています。
キーは、1つのホスト内で一意である必要があります。
キータイプが「Zabbixエージェント」、「Zabbixエージェント(アクティブ)」または「シンプルチェック」の場合、キーの値はZabbixエージェントまたはZabbixサーバーでサポートされている必要があります。
次も参照してください:正しいキー形式。
情報のタイプ 変換後を含め、アイテムの値を検証し、データベースに保存するために使用されるデータ型:
数値(符号なし) - 64ビット符号なし整数。
数値(浮動小数) - 64ビット浮動小数点数。
文字 - 短いテキスト。
ログ - ログプロパティ(タイムスタンプ、ソース、重要度、ログイベントID)の有無にかかわらず、長いテキスト。
テキスト - 長いテキスト。
バイナリ - バイナリ値(従属アイテムでのみサポート)。
JSON - データベースにネイティブ形式で保存される構造化JSONデータ(計算アイテムではサポートされません)。
バイナリまたはJSONデータ型の値を返すアイテムは、計算アイテムの数式またはトリガーの式ではサポートされません。
データ型およびデータベースバックエンドごとの保存上限については、アイテムデータの制限を参照してください。
特定の単一形式でデータを返すアイテムでは、一致するデータ型が自動的に選択されます。たとえば、system.cpu.loadとsystem.cpu.utilはいずれも64ビット浮動小数点数を返すため、数値(浮動小数)が自動的に選択されます。
ホストインターフェース ホストインターフェースを選択します。このフィールドは、ホストレベルでアイテムを編集するときに使用できます。
単位 単位記号を設定すると、Zabbixは受信したアイテムの値に後処理を適用し、指定した単位の接尾辞を付けて表示します。
特殊な書式が適用される単位記号(受信したアイテムの値 → 表示値の例):
B - バイト(1024 → 1 KB)
Bps - 1秒あたりのバイト数(1024 → 1 KBps)
s - 秒。ゼロではない最大3つの時間単位を使用して表示(881764 → 10d 4h 56m)
uptime - hh:mm:ssまたはN日、hh:mm:ss形式の経過時間(881764 → 10 days, 04:56:04)
unixtime - yyyy.mm.dd hh:mm:ss形式のUnixタイムスタンプ(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つのマクロでフィールド全体を埋める必要があります。1つのフィールド内で複数のマクロを使用したり、マクロとテキストを混在させたりすることはできません。
注: カスタム間隔に0以外の値が存在する場合にのみ、更新間隔を「0」に設定できます。「0」に設定し、0以外の値を持つカスタム間隔(フレキシブルまたはスケジュール)が存在する場合、アイテムはカスタム間隔の期間中にポーリングされます。
注:アイテムが有効になった直後、または更新間隔を変更した直後の最初のアイテムポーリングは、設定値より早く実行される場合があります。
新しいアイテムは、スケジューリングまたはフレキシブル更新間隔が設定され、更新間隔が0の場合を除き、作成から60秒以内にチェックされます。
既存のパッシブアイテムは、今すぐ実行 ボタンを押すことで、直ちに値をポーリングできます。
カスタム間隔 アイテムをチェックするためのカスタムルールを作成できます。
フレキシブル - 更新間隔の例外(異なる頻度の間隔)を作成します。
スケジューリング - カスタムポーリングスケジュールを作成します。
詳細については、カスタム間隔を参照してください。
間隔フィールドでは時間の接尾辞がサポートされています(例:30s、1m、2h、1d)。
ユーザーマクロがサポートされています。
1つのマクロでフィールド全体を埋める必要があります。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」以外の任意の文字を使用できます。
ホストインベントリフィールドに格納 アイテムの値を格納するホストインベントリフィールドを選択できます。ホストで自動インベントリ登録が有効になっており、アイテムが数値(符号なし)、数値(浮動小数)、文字、またはテキストの場合に機能します。
説明 アイテムの説明を入力します。ユーザーマクロがサポートされています。
有効 チェックボックスをオンにしてアイテムを有効にし、処理されるようにします。
アイテムを無効にすると、ヒストリキャッシュから直ちに削除されます(ログについては、最後の値のみ保持されます)。
最新データ リンクをクリックすると、アイテムの最新データを表示できます。
このリンクは、既存のアイテムを編集するときにのみ使用できます。

アイテムタイプ固有のフィールドについては、対応するページで説明しています。

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

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

アイテム値の前処理

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

アイテムのテスト

アイテムのテストを実行するには、サーバーとプロキシのシステム時刻が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 クエリを使用し、DebugLevel が 4 または 5 に設定されている場合は、それらをログに記録します。 大きなログエントリは 64KB に切り詰められます。

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

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

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

アイテムのタイムアウト

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

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

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

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

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

タイムアウトの優先順位

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

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

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

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

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

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

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

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