监控项原型对象

以下对象与 监控项原型 API 直接相关。

监控项原型

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

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

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

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

接受用户宏和 LLD 宏。如果使用宏,该值必须是单个宏。不支持多个宏或宏与文本混合使用。灵活间隔可以写成由正斜杠分隔的两个宏(例如 {$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 agent;
2 - Zabbix trapper;
3 - Simple check;
5 - Zabbix internal;
7 - Zabbix agent (active);
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 字符串。
支持 LLD 宏、用户宏、{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。

属性行为
- 创建操作中为必需
- 对继承对象为只读
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) proxy 连接字符串。

属性行为
- 当 type 设置为“HTTP agent”时支持
- 对继承对象为只读
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”时支持
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 监控项原型中执行的脚本;
- 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”时的其他参数。由包含 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”时支持
- 对继承对象为只读
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 监控项数据轮询请求超时。
接受秒数(例如 160)或带有时间后缀的值(例如 30s1m)。也接受用户宏和 LLD 宏。

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

header 对象具有以下属性:

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

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

属性行为:
- 必填

HTTP 查询字段

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

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

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

属性行为
- 必填

监控项原型标签

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

Property Type Description
tag string 监控项原型标签名称。

Property behavior:
- required
value string 监控项原型标签值。

监控项原型预处理

监控项原型预处理对象具有以下属性。

属性 类型 描述
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 自定义乘数 number1, 6 0, 1, 2, 3
2 右侧修剪 字符列表2
3 左侧修剪 字符列表2
4 修剪 字符列表2
5 正则表达式 pattern3 output2 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 path4 0, 1, 2, 3
12 JSONPath path4 0, 1, 2, 3
13 范围检查 min1, 6 max1, 6 0, 1, 2, 3
14 匹配正则表达式 pattern3 0, 1, 2, 3
15 不匹配正则表达式 pattern3 0, 1, 2, 3
16 检查 JSON 中的错误 path4 0, 1, 2, 3
17 检查 XML 中的错误 path4 0, 1, 2, 3
18 使用正则表达式检查错误 pattern3 output2 0, 1, 2, 3
19 丢弃未更改的值
20 使用心跳丢弃未更改的值 seconds5, 6
21 JavaScript script2
22 Prometheus 模式 pattern6, 7 valuelabelfunction output8, 9 0, 1, 2, 3
23 Prometheus 转 JSON pattern6, 7 0, 1, 2, 3
24 CSV 转 JSON character2 character2 0,1 0, 1, 2, 3
25 替换 搜索字符串2 替换字符串2
26 检查不受支持的值 scope1 pattern3, 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 用户宏、LLD 宏
7 遵循以下语法的 Prometheus 模式: <metric name>{<label name>="<label value>", ...} == <value>。每个 Prometheus 模式组件(指标、标签名称、标签值和指标值)都可以是用户宏或 LLD 宏。
8 当选择 label 作为第二个参数时,Prometheus 输出遵循以下语法:<label name>(可以是用户宏或 LLD 宏)。
9 当选择 function 作为第二个参数时,可以使用以下聚合函数之一:summinmaxavgcount
10 支持多条“字段名称、OID 前缀、格式记录”,记录之间使用换行符分隔。