Item prototypeオブジェクト
次のオブジェクトは、itemprototypeAPIに直接関連しています。
アイテムプロトタイプ
アイテムプロトタイプオブジェクトには、以下のプロパティがあります。
| プロパティ | 型 | 説明 |
|---|---|---|
| itemid | ID | アイテムプロトタイプのID。 プロパティの動作: - 読み取り専用 - 更新操作で 必須 |
| delay | string | アイテムプロトタイプの更新間隔。 秒、またはサフィックス付きの時間単位(例: 30s、1m、2h、1d)を受け付けます。また、必要に応じて、セミコロンで区切られた1つ以上のカスタム間隔も指定できます。カスタム間隔には、柔軟な間隔とスケジューリング間隔を混在させることができます。 ユーザーマクロおよびLLDマクロを受け付けます。使用する場合、値は単一のマクロでなければなりません。複数のマクロ、またはテキストと混在したマクロはサポートされません。柔軟な間隔は、スラッシュで区切られた2つのマクロとして記述できます(例: {$FLEX_INTERVAL}/{$FLEX_PERIOD})。例: 1h;wd1-5h9-18;{$Macro1}/1-7,00:00-24:00;0/6-7,12:00-24:00;{$Macro2}/{$Macro3}プロパティの動作: - type が "Zabbix agent" (0)、"Simple check" (3)、"Zabbix internal" (5)、"External check" (10)、"Database monitor" (11)、"IPMI agent" (12)、"SSH agent" (13)、"TELNET agent" (14)、"Calculated" (15)、"JMX agent" (16)、"HTTP agent" (19)、"SNMP agent" (20)、"Script" (21)、"Browser" (22) に設定されている場合、または type が "Zabbix agent (active)" (7) に設定され、かつ key_ に "mqtt.get" が含まれない場合に 必須 |
| hostid | ID | アイテムプロトタイプが属するホストのID。 プロパティの動作: - 定数 - 作成操作で 必須 |
| interfaceid | ID | アイテムプロトタイプのホストインターフェースのID。 プロパティの動作: - アイテムプロトタイプがホストに属し、 type が "Zabbix agent"、"IPMI agent"、"JMX agent"、"SNMP trap"、または "SNMP agent" に設定されている場合に 必須- アイテムプロトタイプがホストに属し、 type が "Simple check"、"External check"、"SSH agent"、"TELNET agent"、または "HTTP agent" に設定されている場合に サポート |
| key_ | string | アイテムプロトタイプキー。 プロパティの動作: - 作成操作で 必須 - 継承されたオブジェクトでは 読み取り専用 |
| name | string | アイテムプロトタイプの名前。 ユーザーマクロをサポートします。 プロパティの動作: - 作成操作で 必須 - 継承されたオブジェクトでは 読み取り専用 |
| type | integer | アイテムプロトタイプのタイプ。 指定可能な値: 0 - Zabbix エージェント; 2 - Zabbix trapper; 3 - Simple check; 5 - Zabbix internal; 7 - Zabbix エージェント (active); 10 - External check; 11 - Database monitor; 12 - IPMI エージェント; 13 - SSH エージェント; 14 - TELNET エージェント; 15 - Calculated; 16 - JMX エージェント; 17 - SNMP trap; 18 - 依存アイテム; 19 - HTTP エージェント; 20 - SNMP エージェント; 21 - Script; 22 - Browser。 プロパティの動作: - 作成操作で 必須 - 継承されたオブジェクトでは 読み取り専用 |
| url | string | URL文字列。 LLDマクロ、ユーザーマクロ、{HOST.IP}、{HOST.CONN}、{HOST.DNS}、{HOST.HOST}、{HOST.NAME}、{HOST.PORT}、{ITEM.ID}、{ITEM.KEY} をサポートします。 プロパティの動作: - type が "HTTP agent" に設定されている場合に 必須- 継承されたオブジェクトでは 読み取り専用 |
| value_type | integer | アイテムプロトタイプの情報の型。 指定可能な値: 0 - 数値(浮動小数); 1 - 文字列; 2 - ログ; 3 - 数値(符号なし); 4 - テキスト; 5 - バイナリ。 プロパティの動作: - 作成操作で 必須 - 継承されたオブジェクトでは 読み取り専用 |
| allow_traps | integer | trapperアイテムと同様に値の投入を許可します。 0 - (デフォルト) 受信データの受け入れを許可しない; 1 - 受信データの受け入れを許可する。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート |
| authtype | integer | 認証方式。type が "SSH agent" に設定されている場合の指定可能な値:0 - (デフォルト) パスワード; 1 - 公開鍵。 type が "HTTP agent" に設定されている場合の指定可能な値:0 - (デフォルト) なし; 1 - basic; 2 - NTLM; 3 - Kerberos; 4 - Digest。 プロパティの動作: - type が "SSH agent" または "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用( type が "HTTP agent" に設定されている場合) |
| description | string | アイテムプロトタイプの説明。 |
| flags | integer | アイテムプロトタイプの生成元。 指定可能な値: 2 - アイテムプロトタイプ; 6 - ディスカバリされたアイテムプロトタイプ プロパティの動作: - 読み取り専用 |
| follow_redirects | integer | データ取得時にレスポンスのリダイレクトに従います。 指定可能な値: 0 - リダイレクトに従わない; 1 - (デフォルト) リダイレクトに従う。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| headers | array | HTTPリクエスト実行時に送信されるヘッダーの配列。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| history | string | 履歴データを保存する期間を表す時間単位。 ユーザーマクロおよびLLDマクロも受け付けます。 デフォルト: 31d。 |
| http_proxy | string | HTTP(S) プロキシ接続文字列。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| ipmi_sensor | string | IPMIセンサー。 プロパティの動作: - type が "IPMI agent" に設定され、かつ key_ が "ipmi.get" に設定されていない場合に 必須- type が "IPMI agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| jmx_endpoint | string | JMX エージェントのカスタム接続文字列。 デフォルト: service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi プロパティの動作: - type が "JMX agent" に設定されている場合に サポート |
| logtimefmt | string | ログエントリ内の時刻の形式。 プロパティの動作: - value_type が "log" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| master_itemid | ID | マスターアイテムのID。 プロパティの動作: - type が "Dependent item" に設定されている場合に 必須- 継承されたオブジェクトでは 読み取り専用 |
| output_format | integer | レスポンスをJSONに変換するかどうか。 指定可能な値: 0 - (デフォルト) 生データのまま保存; 1 - JSONに変換。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| params | string | アイテムプロトタイプのタイプに応じた追加パラメータ: - SSH エージェントおよび TELNET エージェントのアイテムプロトタイプでは実行するスクリプト; - Database monitor のアイテムプロトタイプではSQLクエリ; - Calculated のアイテムプロトタイプでは数式; - Script および Browser のアイテムプロトタイプではスクリプト。 プロパティの動作: - type が "Database monitor"、"SSH agent"、"TELNET agent"、"Calculated"、"Script"、または "Browser" に設定されている場合に 必須- 継承されたオブジェクトでは 読み取り専用( type が "Script" または "Browser" に設定されている場合) |
| parameters | object/array | type が "Script" または "Browser" に設定されている場合の追加パラメータ。name と value プロパティを持つオブジェクトの配列で、name は一意である必要があります。プロパティの動作: - type が "Script" または "Browser" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| password | string | 認証用パスワード。 プロパティの動作: - type が "JMX agent" に設定され、かつ username が設定されている場合に 必須- type が "Simple check"、"SSH agent"、"TELNET agent"、"Database monitor"、または "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用( type が "HTTP agent" に設定されている場合) |
| post_type | integer | posts プロパティに格納されるPOSTデータ本文のタイプ。指定可能な値: 0 - (デフォルト) 生データ。 2 - JSONデータ。 3 - XMLデータ。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| posts | string | HTTP(S) リクエスト本文データ。 プロパティの動作: - type が "HTTP agent" に設定され、かつ post_type が "JSON data" または "XML data" に設定されている場合に 必須- type が "HTTP agent" に設定され、かつ post_type が "Raw data" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| privatekey | string | 秘密鍵ファイル名。 プロパティの動作: - type が "SSH agent" に設定され、かつ authtype が "public key" に設定されている場合に 必須 |
| publickey | string | 公開鍵ファイル名。 プロパティの動作: - type が "SSH agent" に設定され、かつ authtype が "public key" に設定されている場合に 必須 |
| query_fields | array | HTTPリクエスト実行時に送信されるクエリフィールドの配列。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| request_method | integer | リクエストメソッドのタイプ。 指定可能な値: 0 - (デフォルト) GET; 1 - POST; 2 - PUT; 3 - HEAD。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| retrieve_mode | integer | レスポンスのどの部分を保存するか。request_method が "GET"、"POST"、または "PUT" に設定されている場合の指定可能な値:0 - (デフォルト) 本文; 1 - ヘッダー; 2 - 本文とヘッダーの両方を保存。 request_method が "HEAD" に設定されている場合の指定可能な値:1 - ヘッダー。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| snmp_oid | string | SNMP OID。 プロパティの動作: - type が "SNMP agent" に設定されている場合に 必須- 継承されたオブジェクトでは 読み取り専用 |
| ssl_cert_file | string | 公開SSL鍵ファイルのパス。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| ssl_key_file | string | 秘密SSL鍵ファイルのパス。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| ssl_key_password | string | SSL鍵ファイルのパスワード。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| status | integer | アイテムプロトタイプのステータス。 指定可能な値: 0 - (デフォルト) 有効なアイテムプロトタイプ; 1 - 無効なアイテムプロトタイプ; 3 - サポートされていないアイテムプロトタイプ。 |
| status_codes | string | 必要なHTTPステータスコードの範囲。カンマ区切りで指定します。 また、カンマ区切りリストの一部としてユーザーマクロまたはLLDマクロもサポートします。 例: 200,200-{$M},{$M},200-400 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| templateid | ID | 親テンプレートのアイテムプロトタイプのID。 プロパティの動作: - 読み取り専用 |
| timeout | string | アイテムデータ取得リクエストのタイムアウト。 秒、またはサフィックス付きの時間単位(例: 30s、1m)を受け付けます。ユーザーマクロおよびLLDマクロも受け付けます。 指定可能な値の範囲: 1-600s。 デフォルト: "" - プロキシ/グローバル設定を使用。 プロパティの動作: - type が "Zabbix agent" (0)、"Simple check" (3) で key_ が "vmware." および "icmpping" で始まらない場合、"Zabbix agent (active)" (7)、"External check" (10)、"Database monitor" (11)、"SSH agent" (13)、"TELNET agent" (14)、"HTTP agent" (19)、"SNMP agent" (20) で snmp_oid が "walk[" または "get[" で始まる場合、"Script" (21)、"Browser" (22) に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| trapper_hosts | string | 許可されたホスト。 プロパティの動作: - type が "Zabbix trapper" に設定されている場合、または type が "HTTP agent" に設定され、かつ allow_traps が "Allow to accept incoming data" に設定されている場合に サポート |
| trends | string | トレンドデータを保存する期間を表す時間単位。 ユーザーマクロおよびLLDマクロも受け付けます。 デフォルト: 365d。 プロパティの動作: - value_type が "numeric float" または "numeric unsigned" に設定されている場合に サポート |
| units | string | 値の単位。 プロパティの動作: - value_type が "numeric float" または "numeric unsigned" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| username | string | 認証用ユーザー名。 プロパティの動作: - type が "SSH agent" または "TELNET agent" に設定されている場合、または type が "JMX agent" に設定され、かつ password が設定されている場合に 必須- type が "Simple check"、"Database monitor"、または "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用( type が "HTTP agent" に設定されている場合) |
| uuid | string | 既存のアイテムプロトタイプにインポートしたアイテムプロトタイプを関連付けるために使用される汎用一意識別子。指定しない場合は自動生成されます。 プロパティの動作: - アイテムプロトタイプがテンプレートに属する場合に サポート |
| valuemapid | ID | 関連付けられた値マップのID。 プロパティの動作: - value_type が "numeric float"、"character"、または "numeric unsigned" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| verify_host | integer | 接続先のホスト名がホストの証明書内の名前と一致することを検証するかどうか。 指定可能な値: 0 - (デフォルト) 検証しない; 1 - 検証する。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| verify_peer | integer | ホストの証明書が正当であることを検証するかどうか。 指定可能な値: 0 - (デフォルト) 検証しない; 1 - 検証する。 プロパティの動作: - type が "HTTP agent" に設定されている場合に サポート- 継承されたオブジェクトでは 読み取り専用 |
| discover | integer | アイテムプロトタイプのディスカバリステータス。 指定可能な値: 0 - (デフォルト) 新しいアイテムがディスカバリされる; 1 - 新しいアイテムはディスカバリされず、既存のアイテムは失われたものとしてマークされる。 |
HTTPヘッダー
ヘッダーオブジェクトには、以下のプロパティがあります。
HTTPクエリフィールド
クエリフィールドオブジェクトは、URLパラメータを指定するために使用される名前と値を定義します。 次のプロパティがあります。
| プロパティ | Type | 説明 |
|---|---|---|
| name | string | パラメータの名前。 Property behavior: - required |
| value | string | パラメータの値。 Property behavior: - required |
アイテムプロトタイプタグ
アイテムプロトタイプタグオブジェクトには、以下のプロパティがあります。
| プロパティ | Type | 説明 |
|---|---|---|
| tag | string | アイテムプロトタイプのタグ名。 Property behavior: - required |
| value | string | アイテムプロトタイプのタグ値。 |
アイテムプロトタイプの前処理
アイテムプロトタイプの前処理オブジェクトには、以下のプロパティがあります。
| Property | Type | Description |
|---|---|---|
| type | integer | 前処理オプションのタイプ。 指定可能な値: 1 - カスタム乗数; 2 - 右トリム; 3 - 左トリム; 4 - トリム; 5 - 正規表現; 6 - 真偽値を10進数に変換; 7 - 8進数を10進数に変換; 8 - 16進数を10進数に変換; 9 - 単純変化; 10 - 1秒あたりの変化量; 11 - XML XPath; 12 - JSONPath; 13 - 範囲内; 14 - 正規表現に一致; 15 - 正規表現に一致しない; 16 - JSON内のエラーチェック; 17 - XML内のエラーチェック; 18 - 正規表現を使用したエラーチェック; 19 - 未変更なら破棄; 20 - ハートビート付きで未変更なら破棄; 21 - JavaScript; 22 - Prometheusパターン; 23 - PrometheusからJSON; 24 - CSVからJSON; 25 - 置換; 26 - 未サポートをチェック; 27 - XMLからJSON; 28 - SNMP walk値; 29 - SNMP walkからJSON; 30 - SNMP get値。 Property behavior: - required |
| params | string | 前処理オプションで使用される追加パラメータ。 複数のパラメータは改行文字 (\n) で区切ります。 type が "Check unsupported" に設定されている場合、パラメータは <scope>[\n<pattern>] 構文に従います。ここで、pattern は正規表現、scope は次のいずれかです:-1 - 任意のエラーに一致; \ 0 - エラーメッセージが pattern に一致するか確認; \ 1 - エラーメッセージが pattern に一致しないか確認。 Property behavior: - type が "Custom multiplier" (1), "Right trim" (2), "Left trim" (3), "Trim" (4), "Regular expression" (5), "XML XPath" (11), "JSONPath" (12), "In range" (13), "Matches regular expression" (14), "Does not match regular expression" (15), "Check for error in JSON" (16), "Check for error in XML" (17), "Check for error using regular expression" (18), "Discard unchanged with heartbeat" (20), "JavaScript" (21), "Prometheus pattern" (22), "Prometheus to JSON" (23), "CSV to JSON" (24), "Replace" (25), "Check unsupported" (26), "SNMP walk value" (28), "SNMP walk to JSON" (29), または "SNMP get value" (30) に設定されている場合は required |
| error_handler | integer | 前処理ステップが失敗した場合に使用されるアクションタイプ。 指定可能な値: 0 - エラーメッセージはZabbix serverによって設定される; 1 - 値を破棄; 2 - カスタム値を設定; 3 - カスタムエラーメッセージを設定。 type が "Check unsupported" に設定されている場合の指定可能な値:1 - 値を破棄; 2 - カスタム値を設定; 3 - カスタムエラーメッセージを設定。 Property behavior: - type が "Custom multiplier" (1), "Regular expression" (5), "Boolean to decimal" (6), "Octal to decimal" (7), "Hexadecimal to decimal" (8), "Simple change" (9), "Change per second" (10), "XML XPath" (11), "JSONPath" (12), "In range" (13), "Matches regular expression" (14), "Does not match regular expression" (15), "Check for error in JSON" (16), "Check for error in XML" (17), "Check for error using regular expression" (18), "Prometheus pattern" (22), "Prometheus to JSON" (23), "CSV to JSON" (24), "Check unsupported" (26), "XML to JSON" (27), "SNMP walk value" (28), "SNMP walk to JSON" (29), または "SNMP get value" (30) に設定されている場合は required |
| error_handler_params | string | エラーハンドラーパラメータ。 Property behavior: - error_handler が "Set custom value" または "Set custom error message" に設定されている場合は required |
各前処理タイプでサポートされるパラメータとエラーハンドラーは以下のとおりです。
| Preprocessing type | Name | Parameter 1 | Parameter 2 | Parameter 3 | Supported error handlers |
|---|---|---|---|---|---|
| 1 | Custom multiplier | 数値1,\ 6 | 0, 1, 2, 3 | ||
| 2 | Right trim | 文字リスト2 | |||
| 3 | Left trim | 文字リスト2 | |||
| 4 | Trim | 文字リスト2 | |||
| 5 | Regular expression | パターン3 | 出力2 | 0, 1, 2, 3 | |
| 6 | Boolean to decimal | 0, 1, 2, 3 | |||
| 7 | Octal to decimal | 0, 1, 2, 3 | |||
| 8 | Hexadecimal to decimal | 0, 1, 2, 3 | |||
| 9 | Simple change | 0, 1, 2, 3 | |||
| 10 | Change per second | 0, 1, 2, 3 | |||
| 11 | XML XPath | パス4 | 0, 1, 2, 3 | ||
| 12 | JSONPath | パス4 | 0, 1, 2, 3 | ||
| 13 | In range | 最小値1,\ 6 | 最大値1,\ 6 | 0, 1, 2, 3 | |
| 14 | Matches regular expression | パターン3 | 0, 1, 2, 3 | ||
| 15 | Does not match regular expression | パターン3 | 0, 1, 2, 3 | ||
| 16 | Check for error in JSON | パス4 | 0, 1, 2, 3 | ||
| 17 | Check for error in XML | パス4 | 0, 1, 2, 3 | ||
| 18 | Check for error using regular expression | パターン3 | 出力2 | 0, 1, 2, 3 | |
| 19 | Discard unchanged | ||||
| 20 | Discard unchanged with heartbeat | 秒5,\ 6 | |||
| 21 | JavaScript | スクリプト2 | |||
| 22 | Prometheus pattern | パターン6,\ 7 | value, label, function |
出力8,\ 9 | 0, 1, 2, 3 |
| 23 | Prometheus to JSON | パターン6,\ 7 | 0, 1, 2, 3 | ||
| 24 | CSV to JSON | 文字2 | 文字2 | 0,1 | 0, 1, 2, 3 |
| 25 | Replace | 検索文字列2 | 置換文字列2 | ||
| 26 | Check unsupported | スコープ1 | パターン3,\ 6 | 1, 2, 3 | |
| 27 | XML to JSON | 0, 1, 2, 3 | |||
| 28 | SNMP walk value | OID2 | 形式: 0 - 変更なし 1 - Hex-STRING から UTF-8 2 - Hex-STRING から MAC 3 - BITS から整数 |
0, 1, 2, 3 | |
| 29 | SNMP walk to JSON10 | フィールド名2 | OIDプレフィックス2 | 形式: 0 - 変更なし 1 - Hex-STRING から UTF-8 2 - Hex-STRING から MAC 3 - BITS から整数 |
0, 1, 2, 3 |
| 30 | SNMP get value | 形式: 1 - Hex-STRING から UTF-8 2 - Hex-STRING から MAC 3 - BITS から整数 |
0, 1, 2, 3 | ||
1 整数または浮動小数点数
2 文字列
3 正規表現
4 JSONPath または XML XPath
5 正の整数 (時間サフィックスをサポート。例: 30s, 1m, 2h,
1d)
6 ユーザーマクロ、LLDマクロ
7 次の構文に従う Prometheus パターン:
<metric name>{<label name>="<label value>", ...} == <value>。各
Prometheus パターンの構成要素 (メトリクス、ラベル名、ラベル値、メトリクス値) には、ユーザーマクロまたは LLD マクロを使用できます。
8 次の構文に従う Prometheus 出力: 2番目の
パラメータとして label が選択されている場合は <label name> (ユーザーマクロまたは LLD マクロを使用可能)。
9 2番目の
パラメータとして function が選択されている場合の集計関数のいずれか: sum, min, max, avg, count。
10 改行文字で区切られた複数の "Field name,OID prefix,Format records" レコードをサポートします。