监控项对象
以下对象直接与item API 相关。
监控项
无法通过 Zabbix API 直接创建、更新或删除 Web 监控项。
监控项对象具有以下属性。
| 属性 | 类型 | 描述 |
|---|---|---|
| itemid | ID | 监控项的 ID。 属性行为: - 只读 - 更新操作时为 必需 |
| delay | string | 监控项的更新间隔。 接受秒数(例如 1、60、300)、带有时间后缀的值(例如 30s、1m、2h、1d),或者可选的一个或多个自定义间隔,各项之间使用分号分隔。自定义间隔可以混合使用灵活间隔和调度间隔。接受用户宏。如果使用用户宏,该值必须是单个宏。不支持多个宏或宏与文本混合使用。灵活间隔可以写成由正斜杠分隔的两个宏(例如 {$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 | 监控项名称。 支持用户宏。 属性行为: - 创建操作时为 必需 - 对于继承的对象或发现的对象为 只读 |
| name_resolved | string | 解析用户宏后的监控项名称。 属性行为: - 只读 |
| type | integer | 监控项类型。 可能的值: 0 - Zabbix agent; 2 - Zabbix trapper; 3 - Simple check; 5 - Zabbix internal; 7 - Zabbix agent (active); 9 - Web item; 10 - External check; 11 - Database monitor; 12 - IPMI agent; 13 - SSH agent; 14 - TELNET agent; 15 - Calculated; 16 - JMX agent; 17 - SNMP trap; 18 - Dependent item; 19 - HTTP agent; 20 - SNMP agent; 21 - Script; 22 - Browser。 属性行为: - 创建操作时为 必需 - 对于继承的对象或发现的对象为 只读 |
| url | string | URL 字符串。 支持用户宏、{HOST.IP}、{HOST.CONN}、{HOST.DNS}、{HOST.HOST}、{HOST.NAME}、{HOST.PORT}、{ITEM.ID}、{ITEM.KEY}。 属性行为: - 当 type 设置为 "HTTP agent" 时为 必需- 对于继承的对象或发现的对象为 只读 |
| value_type | integer | 监控项的信息类型。 可能的值: 0 - numeric float; 1 - character; 2 - log; 3 - numeric unsigned; 4 - text; 5 - binary; 6 - JSON。 属性行为: - 创建操作时为 必需 - 对于继承的对象或发现的对象为 只读 |
| 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 | 监控项描述。 属性行为: - 对于发现的对象为 只读 |
| error | string | 更新监控项值时出现问题所显示的错误文本。 属性行为: - 只读 |
| flags | integer | 监控项的来源。 可能的值: 0 - 普通监控项; 4 - 从原型转换而来的监控项。 属性行为: - 只读 |
| follow_redirects | integer | 轮询数据时跟随响应重定向。 可能的值: 0 - 不跟随重定向; 1 - (默认) 跟随重定向。 属性行为: - 当 type 设置为 "HTTP agent" 时为 支持- 对于继承的对象或发现的对象为 只读 |
| headers | array | 执行 HTTP 请求时发送的标头数组。 属性行为: - 当 type 设置为 "HTTP agent" 时为 支持- 对于继承的对象或发现的对象为 只读 |
| history | string | 历史数据应保留多长时间的时间单位。 也接受用户宏。 默认值:31d。 属性行为: - 对于发现的对象为 只读 |
| http_proxy | string | HTTP(S) proxy 连接字符串。 属性行为: - 当 type 设置为 "HTTP agent" 时为 支持- 对于继承的对象或发现的对象为 只读 |
| inventory_link | integer | 由监控项填充的主机资产清单字段 ID。 支持的主机资产清单字段及其 ID,请参阅主机资产清单页面。 默认值:0。 属性行为: - 当 value_type 设置为 "numeric float"、"character"、"numeric unsigned" 或 "text" 时为 支持- 对于发现的对象为 只读 |
| ipmi_sensor | string | IPMI 传感器。 属性行为: - 当 type 设置为 "IPMI agent" 且 key_ 未设置为 "ipmi.get" 时为 必需- 当 type 设置为 "IPMI agent" 时为 支持- 对于继承的对象或发现的对象为 只读 |
| jmx_endpoint | string | JMX agent 自定义连接字符串。 默认值:service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi 属性行为: - 当 type 设置为 "JMX agent" 时为 支持- 对于发现的对象为 只读 |
| lastclock | timestamp | 监控项值最后一次更新的时间。 默认情况下,仅显示最近 24 小时内的值。您可以在“管理”>“常规”菜单部分中更改最大历史数据显示周期参数的值,以延长此时间段。 属性行为: - 只读 |
| lastns | integer | 监控项值最后一次更新时的纳秒数。 默认情况下,仅显示最近 24 小时内的值。您可以在“管理”>“常规”菜单部分中更改最大历史数据显示周期参数的值,以延长此时间段。 属性行为: - 只读 |
| lastvalue | string | 监控项的最新值。 默认情况下,仅显示最近 24 小时内的值。您可以在“管理”>“常规”菜单部分中更改最大历史数据显示周期参数的值,以延长此时间段。 属性行为: - 只读 |
| 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 agent 和 TELNET agent 监控项所执行的脚本; - 数据库监控监控项的 SQL 查询; - 计算监控项的公式; - 脚本和浏览器监控项的脚本。 属性行为: - 当 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" 时为 支持- 对于继承的对象或发现的对象为 只读 |
| prevvalue | string | 监控项的上一个值。 默认情况下,仅显示最近 24 小时内的值。您可以在“管理”>“常规”菜单部分中更改最大历史数据显示周期参数的值,以延长此时间段。 属性行为: - 只读 |
| 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" 时为 支持- 对于继承的对象或发现的对象为 只读 |
| state | integer | 监控项状态。 可能的值: 0 - (默认) 正常; 1 - 不支持。 属性行为: - 只读 |
| status | integer | 监控项状态。 可能的值: 0 - (默认) 已启用的监控项; 1 - 已禁用的监控项。 |
| status_codes | string | 必需的 HTTP 状态码范围,以逗号分隔。 也支持将用户宏作为逗号分隔列表的一部分。 示例:200,200-{$M},{$M},200-400 属性行为: - 当 type 设置为 "HTTP agent" 时为 支持- 对于继承的对象或发现的对象为 只读 |
| templateid | ID | 父模板监控项的 ID。 提示:使用 hostid 属性指定监控项所属的模板。属性行为: - 只读 |
| timeout | string | 监控项数据轮询请求超时时间。 接受秒数(例如 1、60、300)或带有时间后缀的值(例如 300s、1m)。也接受用户宏。可能的值范围:1-600s。 默认值:"" - 使用 proxy/全局设置。 属性行为: - 当 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" 时为 支持。如果省略该属性,则会自动将其设置为 {$TRAPPER.ALLOWED_HOSTS}用户宏(默认值)。默认情况下,{$TRAPPER.ALLOWED_HOSTS} 为 127.0.0.1,::1。如果该属性设置为空字符串,则将拒绝来自所有主机的传入连接。 |
| trends | string | 趋势数据应保留多长时间的时间单位。 也接受用户宏。 默认值: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" 时为 支持- 对于继承的对象或发现的对象为 只读 |
HTTP 标头
标头对象具有以下属性:
HTTP 查询字段
查询字段对象定义了用于指定 URL 参数的名称和值。 它具有以下属性:
监控项标签
监控项标签对象具有以下属性。
| 属性 | Type | 描述 |
|---|---|---|
| tag | string | 监控项标签名称。 属性行为: - 必填 |
| value | string | 监控项标签值。 属性行为: - 只读。 |
| object | integer | 标签继承自的对象类型。 可能的值: 0 - 模板; 1 - 主机。 属性行为: - 只读。 |
| objectid | ID | 标签继承自的对象的 ID。 属性行为: - 只读。 |
监控项预处理
监控项预处理对象具有以下属性。
| 属性 | 类型 | 描述 |
|---|---|---|
| type | integer | 预处理选项类型。 可能的值: 1 - 自定义乘数; 2 - 右侧修剪; 3 - 左侧修剪; 4 - 修剪; 5 - 正则表达式; 6 - 布尔值转十进制; 7 - 八进制转十进制; 8 - 十六进制转十进制; 9 - 简单变化; 10 - 每秒变化; 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 值。 属性行为: - 必需 |
| params | string | 预处理选项使用的其他参数。 多个参数使用换行符 (\n) 分隔。 如果 type 设置为“检查不受支持的值”,参数遵循 <scope>[\n<pattern>] 语法,其中 pattern 是正则表达式,scope 为以下值之一:-1 - 匹配任意错误; \ 0 - 检查错误消息是否匹配 pattern; \ 1 - 检查错误消息是否不匹配 pattern。 属性行为: - 当 type 设置为“自定义乘数”(1)、“右侧修剪”(2)、“左侧修剪”(3)、“修剪”(4)、“正则表达式”(5)、“XML XPath”(11)、“JSONPath”(12)、“范围检查”(13)、“匹配正则表达式”(14)、“不匹配正则表达式”(15)、“检查 JSON 中的错误”(16)、“检查 XML 中的错误”(17)、“使用正则表达式检查错误”(18)、“使用心跳丢弃未更改的值”(20)、“JavaScript”(21)、“Prometheus 模式”(22)、“Prometheus 转 JSON”(23)、“CSV 转 JSON”(24)、“替换”(25)、“检查不受支持的值”(26)、“SNMP walk 值”(28)、“SNMP walk 转 JSON”(29) 或“SNMP get 值”(30) 时必需 |
| error_handler | integer | 预处理步骤失败时使用的操作类型。 可能的值: 0 - 由 Zabbix 服务器设置错误消息; 1 - 丢弃值; 2 - 设置自定义值; 3 - 设置自定义错误消息。 当 type 设置为“检查不受支持的值”时的可能值:1 - 丢弃值; 2 - 设置自定义值; 3 - 设置自定义错误消息。 属性行为: - 当 type 设置为“自定义乘数”(1)、“正则表达式”(5)、“布尔值转十进制”(6)、“八进制转十进制”(7)、“十六进制转十进制”(8)、“简单变化”(9)、“每秒变化”(10)、“XML XPath”(11)、“JSONPath”(12)、“范围检查”(13)、“匹配正则表达式”(14)、“不匹配正则表达式”(15)、“检查 JSON 中的错误”(16)、“检查 XML 中的错误”(17)、“使用正则表达式检查错误”(18)、“Prometheus 模式”(22)、“Prometheus 转 JSON”(23)、“CSV 转 JSON”(24)、“检查不受支持的值”(26)、“XML 转 JSON”(27)、“SNMP walk 值”(28)、“SNMP walk 转 JSON”(29) 或“SNMP get 值”(30) 时必需 |
| error_handler_params | string | 错误处理程序参数。 属性行为: - 当 error_handler 设置为“设置自定义值”或“设置自定义错误消息”时必需 |
以下参数和错误处理程序适用于每种预处理类型。
| 预处理类型 | 名称 | 参数 1 | 参数 2 | 参数 3 | 支持的错误处理程序 |
|---|---|---|---|---|---|
| 1 | 自定义乘数 | 数字1, 6 | 0, 1, 2, 3 | ||
| 2 | 右侧修剪 | 字符列表2 | |||
| 3 | 左侧修剪 | 字符列表2 | |||
| 4 | 修剪 | 字符列表2 | |||
| 5 | 正则表达式 | 模式3 | 输出2 | 0, 1, 2, 3 | |
| 6 | 布尔值转十进制 | 0, 1, 2, 3 | |||
| 7 | 八进制转十进制 | 0, 1, 2, 3 | |||
| 8 | 十六进制转十进制 | 0, 1, 2, 3 | |||
| 9 | 简单变化 | 0, 1, 2, 3 | |||
| 10 | 每秒变化 | 0, 1, 2, 3 | |||
| 11 | XML XPath | 路径4 | 0, 1, 2, 3 | ||
| 12 | JSONPath | 路径4 | 0, 1, 2, 3 | ||
| 13 | 范围检查 | 最小值1, 6 | 最大值1, 6 | 0, 1, 2, 3 | |
| 14 | 匹配正则表达式 | 模式3 | 0, 1, 2, 3 | ||
| 15 | 不匹配正则表达式 | 模式3 | 0, 1, 2, 3 | ||
| 16 | 检查 JSON 中的错误 | 路径4 | 0, 1, 2, 3 | ||
| 17 | 检查 XML 中的错误 | 路径4 | 0, 1, 2, 3 | ||
| 18 | 使用正则表达式检查错误 | 模式3 | 输出2 | 0, 1, 2, 3 | |
| 19 | 丢弃未更改的值 | ||||
| 20 | 使用心跳丢弃未更改的值 | 秒5, 6 | |||
| 21 | JavaScript | 脚本2 | |||
| 22 | Prometheus 模式 | 模式6, 7 | value、label、function |
输出8, 9 | 0, 1, 2, 3 |
| 23 | Prometheus 转 JSON | 模式6, 7 | 0, 1, 2, 3 | ||
| 24 | CSV 转 JSON | 字符2 | 字符2 | 0,1 | 0, 1, 2, 3 |
| 25 | 替换 | 搜索字符串2 | 替换字符串2 | ||
| 26 | 检查不受支持的值 | 范围1 | 模式3, 6 | 1, 2, 3 | |
| 27 | XML 转 JSON | 0, 1, 2, 3 | |||
| 28 | SNMP walk 值 | OID2 | 格式: 0 - 不变 1 - 从 Hex-STRING 转换为 UTF-8 2 - 从 Hex-STRING 转换为 MAC 3 - 从 BITS 转换为整数 |
0, 1, 2, 3 | |
| 29 | SNMP walk 转 JSON10 | 字段名称2 | OID 前缀2 | 格式: 0 - 不变 1 - 从 Hex-STRING 转换为 UTF-8 2 - 从 Hex-STRING 转换为 MAC 3 - 从 BITS 转换为整数 |
0, 1, 2, 3 |
| 30 | SNMP get 值 | 格式: 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 用户宏
7 遵循以下语法的 Prometheus 模式:<metric name>{<label name>="<label value>", ...} == <value>。Prometheus 模式的每个组成部分(指标、标签名称、标签值和指标值)都可以是用户宏。
8 遵循以下语法的 Prometheus 输出:如果选择 label 作为第二个参数,则为 <label name>(可以是用户宏)。
9 如果选择 function 作为第二个参数,则为以下聚合函数之一:sum、min、max、avg、count。
10 支持多条“字段名称、OID 前缀、格式记录”,记录之间使用换行符分隔。