监控项对象

以下对象直接与item API 相关。

监控项

无法通过 Zabbix API 直接创建、更新或删除 Web 监控项。

监控项对象具有以下属性。

属性 类型 描述
itemid ID 监控项的 ID。

属性行为
- 只读
- 更新操作时为 必需
delay string 监控项的更新间隔。

接受秒数(例如 160300)、带有时间后缀的值(例如 30s1m2h1d),或者可选的一个或多个自定义间隔,各项之间使用分号分隔。自定义间隔可以混合使用灵活间隔和调度间隔。

接受用户宏。如果使用用户宏,该值必须是单个宏。不支持多个宏或宏与文本混合使用。灵活间隔可以写成由正斜杠分隔的两个宏(例如 {$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" 时的其他参数。由包含 namevalue 属性的对象组成的数组,其中 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 监控项数据轮询请求超时时间。
接受秒数(例如 160300)或带有时间后缀的值(例如 300s1m)。也接受用户宏。

可能的值范围: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 标头

标头对象具有以下属性:

属性 类型 说明
name string HTTP 标头名称。

属性行为
- 必填
value string 标头值。

属性行为
- 必填

HTTP 查询字段

查询字段对象定义了用于指定 URL 参数的名称和值。 它具有以下属性:

属性 类型 描述
name string 参数名称。

属性行为
- 必填
value string 参数值。

属性行为
- 必填

监控项标签

监控项标签对象具有以下属性。

属性 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 valuelabelfunction 输出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 正整数(支持时间后缀,例如 30s1m2h1d
6 用户宏
7 遵循以下语法的 Prometheus 模式:<metric name>{<label name>="<label value>", ...} == <value>。Prometheus 模式的每个组成部分(指标、标签名称、标签值和指标值)都可以是用户宏。
8 遵循以下语法的 Prometheus 输出:如果选择 label 作为第二个参数,则为 <label name>(可以是用户宏)。
9 如果选择 function 作为第二个参数,则为以下聚合函数之一:summinmaxavgcount
10 支持多条“字段名称、OID 前缀、格式记录”,记录之间使用换行符分隔。