这是原厂英文文档的翻译页面. 欢迎帮助我们 完善文档.
2022 Zabbix中国峰会
2022 Zabbix中国峰会

> 监控项原型对象

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

监控项原型

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

属性 类型 描述
itemid string (只读) 监控项原型的ID
delay
(必需)
string 监控项原型的更新间隔。接受秒或带有后缀的时间单位(30s,1m,2h,1d)。
可灵活的指定一个或多个时间间隔自定义间隔或计划,
多个间隔用分号分割。
可以使用用户宏和LLD宏. 一个宏必须填充整个字段. 不支持字段中的多个宏或与文本混合的宏.
灵活的间隔可以写成两个用正斜杠分隔的宏 (例如 {$FLEX_INTERVAL}/{$FLEX_PERIOD}).

Zabbix 采集器, 相关项监控和Zabbix agent (主动)可选 mqtt.get key。
hostid
(必需)
string 监控项原型的主机ID.

对于更新操作,此字段为只读
ruleid
(必需)
string 监控项所属的LLD规则的ID.

对于更新操作,此字段为只读
interfaceid
(必需)
string 监控项原型的主机接口的ID。 仅用于监控项原型。

对于Zabbix agent (主动), Zabbix 内部检查, Zabbix 采集器,相关项监控, 数据库监控项和可计算监控项原型是可选的。
key
(必需)
string 监控项原型key.
name
(必需)
string 监控项原型名字。
type
(必需)
integer 监控项原型类型.

可选值:
0 - Zabbix agent;
2 - Zabbix 采集器;
3 - 简单检查;
5 - Zabbix 内部检查;
7 - Zabbix agent (主动);
10 - 外部检查;
11 - 数据库监控;
12 - IPMI agent;
13 - SSH agent;
14 - TELNET agent;
15 - 可计算的监控;
16 - JMX agent;
17 - SNMP trap;
18 - 相关项监控;
19 - HTTP agent;
20 - SNMP agent;
21 - 脚本.
url
(必需)
string URL仅用于HTTP agent监控项原型. 支持 LLD宏,用户宏, {HOST.IP}, {HOST.CONN}, {HOST.DNS}, {HOST.HOST}, {HOST.NAME}, {ITEM.ID}, {ITEM.KEY}.
value_type
(必需)
integer 监控项原型的值的类型

可选项:
0 - 浮点值;
1 - 字符串;
2 - 日志;
3 - 无符号整数;
4 - 文本。
allow_traps integer HTTP客户端监控项原型字段. 允许采集器监控项类型填充值。

0 - (默认值) 不允许接受传入数据、
1 - 允许接受传入数据。
authtype integer 仅允许SSH客户端监控项原型或者HTTP客户端监控项原型。

SSH客户端验证方法可选值:
0 - (默认值) 密码;
1 - 秘钥.

HTTP客户端验证方法可选值:
0 - (默认值) none
1 - basic
2 - NTLM
3 - Kerberos
description string 监控项原型的描述.
follow_redirects integer HTTP客户端监控现原型字段。数据重定向.

0 - 不要重定向。
1 - (默认值) 重定向。
headers object HTTP客户端监控现原型字段。 HTTP(S)请求头的对象,其中,头部名称用作键,头部值用作值.

示例:
{ "User-Agent": "Zabbix" }
history string 历史数据的保存时间。可接受用户宏和LLD宏。

默认值: 90d.
http_proxy string HTTP客户端监控现原型字段。 HTTP(S) 代理地址字符串.
ipmi_sensor string IPMI传感器. 仅用于IPMI监控现原型.
jmx_endpoint string JMX客户端连接地址。

默认值:
service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi
logtimefmt string 日志条目中的时间格式。仅由日志监控项原型使用。
master_itemid integer 主监控项ID.
最多可递归3个相关监控项目和监控项目原型,且相关监控项和监控项原型的最大计数等于29999。
output_format integer HTTP客户端监控项原型字段。可将响应内容转换为JSON

0 - (默认值) 原始数据.
1 - 转JSON.
params string 其他参数取决于监控项原型的类型:
- SSH和Telnet监控项原型的执行脚本;
- 数据库监控项原型的sql查询;
- 可计算监控项目原型的公式。
parameters array 脚本监控项原型的其他参数。具有“名称”和“值”属性的对象数组,其中名称必须唯一。
password string 验证密码。用于简单检查、SSH、Telnet、数据库监控项、JMX和HTTP客户端监控项原型。
post_type integer HTTP客户端监控现原型字段。 posts属性中存储的post数据体的类型。

0 - (默认值) Raw数据。
2 - JSON数据。
3 - XML数据。
posts string HTTP客户端监控项原型字段。HTTP(S)请求内容. 使用post类型.
privatekey string 私钥文件的名称。
publickey string 公钥文件的名称。
query_fields array HTTP客户端监控项原型字段。 查询参数。具有“键”:“值”对的对象数组,其中值可以是空字符串。
request_method integer HTTP客户端监控项原型字段。请求方法的类型。

0 - (默认值) GET
1 - POST
2 - PUT
3 - HEAD
retrieve_mode integer HTTP客户端监控项原型字段。 响应返数据的哪一部分。

0 - (默认值) Body.
1 - Headers.
2 - body和headers.

值为1时,返回request的HEAD。
snmp_oid string SNMP OID.
ssl_cert_file string HTTP代理监控项原型字段。公共SSL密钥文件路径。
ssl_key_file string HTTP代理监控项原型字段。私有SSL密钥文件路径。
ssl_key_password string HTTP代理监控项原型字段。 SSL密钥文件的密码。
status integer 监控项原型状态。

可选值:
0 - (默认值) 激活监控项原型;
1 - 禁用监控项原型;
3 - 不支持监控项原型.
status_codes string HTTP代理监控项原型字段。 指定HTTP状态码范围以,分隔。还支持用户宏或LLD宏作为逗号分隔列表的一部分。

例如: 200,200-{$M},{$M},200-400
templateid string 监控项原型的模板(只读)id.
timeout string 监控项数据轮询请求超时。用于HTTP代理和脚本监控项原型. 支持用户宏或LLD宏。

默认值: 3s
最小值: 60s
trapper_hosts string 允许的主机。 用于采集器监控项原型或者HTTP监控现原型.
trends string 趋势数据存储多长时间。还接受用户宏和LLD宏。

默认值: 365d.
units string 值的单位。
username string 验证的用户名. 用于简单检查、SSH、Telnet、数据库监控项、JMX和HTTP代理监控项原型。

SSH和Telnet监控项目原型需要。
uuid string 通用唯一标识符,用于将导入的监控项目原型链接到现有的监控项目原型。仅用于模板上的监控项原型。如果没有给出则自动生成。

对于更新操作,此字段为只读.
valuemapid string 关联值映射值的ID.
verify_host integer HTTP代理监控项原型字段。 验证URL中的主机名位于主机证书的公用名字段或使用者备用名字段中.

0 - (默认值) 不验证.
1 - 验证.
verify_peer integer HTTP代理监控项原型字段。 验证主机证书是否真实.

0 - (默认值) 不验证.
1 - 验证.
discover integer 监控项原型自动发现状态.

可选值:
0 - (默认值) 新监控项目将被发现;
1 - 新项目将不会被发现,现有项目将被标记为丢失。

注意,对于某些方法(更新、删除),必需/可选参数组合是不同的。

监控项原型标签

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

属性 类型 描述
tag
(必需)
string 监控项原型标签名字。
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 - 丢弃未更改的内容;<br >20 - 丢弃未更改的心跳;
21 - JavaScript;
22 - Prometheus 模式;
23 - Prometheus 到 JSON;
24 - CSV 到 JSON;
25 - 替换;<br >26 - 检查不支持;
27 - XML 到 JSON。
params
(必需)
string 预处理选项使用的附加参数。多个参数由 LF (\n) 字符分隔。
error_handler
(必需)
integer 在预处理步骤失败的情况下使用的操作类型。

可能的值:
0 - 错误消息由 Zabbix server设置;
1 - 丢弃值;
2 - 设置自定义值;
3 - 设置自定义错误消息。
error_handler_params
(必需)
string 错误处理程序参数。与 error_handler 一起使用。

如果 error_handler 为 0 或 1,则必须为空。
如果 error_handler 为 2,则可以为空。
如果error_handler为3,则不能为空。

每个都支持以下参数和错误处理程序 预处理类型。

预处理类型 名称 参数 1 参数 2 参数 3 支持的错误处理程序
1 自定义乘数 number1, 6 0, 1, 2, 3
2 右修剪 list of characters2
3 左修剪 list of characters2
4 修剪 list of characters2
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 普罗米修斯模式 pattern6, 7 value, label, function 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 替换 search string2 replacement2
26 检查不支持 1,2,3
27 XML 转 JSON 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 模式组件(指标、标签名称、标签值和指标value) 可以是用户宏或 LLD 宏。
8 Prometheus 输出如下语法:<label name>(可以是用户宏或 LLD 宏)如果选择 label 作为第二个参数。
9 聚合函数之一:summinmaxavgcount 如果function被选为第二个范围。