> 监控项原型对象

如下对象与itemprototype API直接相关。

监控项原型

监控项原型有如下属性。

属性类型描述
itemidstring(只读) 监控项原型的ID。
delay
(必需)
string更新监控项的时间间隔。 接受具有后缀(30s,1m,2h,1d)时间单位,并且具有或不具有由灵活间隔和调度间隔组成的一个或多个自定义间隔作为串行化字符串自定义时间间隔。也接受用户宏。 灵活的间隔可以写成两个由正斜杠分隔的宏(例如:{$FLEXINTERVAL}/{$FLEX_PERIOD}。 间隔用分号分隔。
可选的Zabbix trapper 或依赖监控项(Dependent item)。
hostid
(必须)
string监控项原型所属的主机的ID。

对于更新操作,这个字段是 只读.
ruleid
(必须)
string监控项所属的LLD(低级别发现)的ID

对于更新操作,这个字段是 只读.
interfaceid
(必须)
string监控项原型的主机的接口的ID。仅用于主机监控项原型。

可选 Zabbix agent (active), Zabbix internal, Zabbix trapper, Dependent item, Zabbix aggregate, database monitor and 计算型监控项.
key
(必须)
string监控项原型的键。
name
(必须)
string监控项原型的名称。
type
(必须)
integer监控项原型的类型。

可能的值:
0 - Zabbix agent;
2 - Zabbix trapper;
3 - simple check;
5 - Zabbix internal;
7 - Zabbix agent (active);
8 - Zabbix aggregate;
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;
url
(必须)
string仅在HTTP agent监控项原型有要求的URL字符串。支持LLD macros, user macros, {HOST.IP}, {HOST.CONN}, {HOST.DNS}, {HOST.HOST}, {HOST.NAME}, {ITEM.ID}, {ITEM.KEY}。
value_type
(required)
integer监控项原型信息类型。

可能的值:
0 - numeric float;
1 - character;
2 - log;
3 - numeric unsigned;
4 - text.
allow_trapsintegerHTTP agent监控项原型字段。允许像trapper监控项一样的填充值。

0 - (默认) 不允许接收传入数据。
1 - 允许接收传入数据。
authtypeinteger仅用于SSH agent 监控项原型或者 HTTP agent 监控项原型。

SSH agent认证方法可能的值:
0 - (默认) password;
1 - public key.

HTTP agent认证方式可选值:
0 - (default) none
1 - basic
2 - NTLM
3 - Kerberos
descriptionstring监控项原型的说明。
follow_redirectsintegerHTTP agent监控项原型字段。当合并数据时跟随重定向。

0 - 不要遵循重定向。
1 - (默认) 遵循重定向。
headersobjectHTTP agent监控项原型字段。 带有HTTP(S)的报头,名称是键,报文的值是键的值。

示例:
{ “User-Agent”: “Zabbix” }
historystring历史数据应被保存的时间。接受用户宏和LLD宏。

默认: 90d.
http_proxystringHTTP agent监控项原型字段。HTTP(S)代理连接字符串。
ipmi_sensorstringIPMI传感器,仅用于IPMI监控项原型。
jmx_endpointstringJMX agent自定义的连接字符串。

默认值:
service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi
logtimefmtstring日志条目的时间格式。仅用于日志监控项原型。
master_itemidinteger主监控项ID。
递归3层依赖监控项和监控项原型,最大数目的监控项和监控项原型等999是允许的。\依赖项要求。
output_formatintegerHTTP agent监控项原型字段。返回数据应被转换为JSON格式。

0 - (默认) Store raw.
1 - Convert to JSON.
paramsstring附加参数依赖于监控项原型的类型:
- SSH和Telnet项目原型执行脚本;
- 数据库监控项目原型的SQL查询
- 计算监控项目原型的公式。
passwordstring认证的密码。用于simple check, SSH, Telnet, database monitor, JMX and HTTP agent 监控项原型。
portstring监控的监控项原型的端口。仅用于SNMP监控项原型。
post_typeintegerHTTP agent监控项原型字段。存储在post属性的post数据体的类型。

0 - (默认) Raw data.
2 - JSON data.
3 - XML data.
postsstringHTTP agent监控项原型字段。HTTP(S) 请求报文数据。用于post_data。
privatekeystring私钥文件名。
publickeystring公钥文件名。
query_fieldsarrayHTTP agent监控项原型字段。查询参数。带有键值对的数组对象,值可以为空字符串。
request_methodintegerHTTP agent监控项原型字段。请求方法类型。

0 - GET
1 - (默认) POST
2 - PUT
3 - HEAD
retrieve_modeintegerHTTP agent监控项原型字段。指定那一部分的响应应该被存储。

0 - (默认) Body.
1 - Headers.
2 - HTTP正文和HTTP标题都将被存储

对于request_method头,只允许值为1。
snmp_communitystringSNMP共同体秘钥.

仅用于SNMPv1和SNMPv2监控项原型。
snmp_oidstringSNMP OID.
ssl_cert_filestringHTTP agent监控项原型字段。公共SSL key文件路径。
ssl_key_filestringHTTP agent监控项原型字段。私有SSL key文件路径。
ssl_key_passwordstringHTTP agent监控项原型字段。SSL key文件的密码。
statusinteger监控项原型的状态。

可能的值。
0 - (默认) 启用监控项目原型。
1 - 禁用监控项目原型。
3 - 不支持的监控项目原型。
status_codesstringHTTP agent监控项原型字段。以逗号分隔的要求的HTTP状态码的范围。也接受用户宏和LLD宏。

Example: 200,200-{$M},{$M},200-400
templateidstring(只读)父模板的监控项原型的ID。
timeoutstringHTTP agent监控项原型字段。监控项数据合并请求超时时间。支持用户宏和LLD宏。

默认: 3s
最大值: 60s
trapper_hostsstring允许主机。用于trapp监控项原型或者HTTP监控项原型。
trendsstring趋势数据被保存的时间。也接受用户宏和LLD宏。

默认: 365d.
unitsstring单位
usernamestring认证的用户名。用于simple check, SSH, Telnet, database monitor, JMX and HTTP agent 监控项原型。

SSH 和 Telnet 监控项原型要求。
valuemapidstring相关值映射的ID。
verify_hostintegerHTTP agent监控项原型字段。验证URL中的主机名在主机证书中的通用名字段或者备用字段。

0 - (默认) 不验证.
1 - 验证.
verify_peerintegerHTTP agent监控项原型字段。主机合法性认证。

0 - (默认) 不验证.
1 - 验证.
discoverinteger项目原型发现状态。
可能的值:
0 -(默认)新项目将被发现;
新的物品将不会被发现,现有的物品将被标记为丢失。

监控项预处理

监控项预处理对象有如下属性。

属性类型说明
type
(必需)
integer预处理选项类型。

取值范围:
1 -自定义乘数;
2 -右纵倾;
3 -左纵倾;
4 -修剪;
5 -正则表达式匹配;
6 -布尔值到小数;
7 -八进制到十进制;
8—十六进制到十进制;
9 -简单的改变;
10 -每秒变化;
11 - XML XPath;
12 - JSONPath;
13 - In范围;
14 -匹配正则表达式;
15 -不匹配正则表达式;
16 -检查JSON中的错误
17 -检查XML中的错误;
18 -使用正则表达式检查错误;
19 -丢弃不变的;
20 -不改变心跳丢弃;
21 - JavaScript;
22 -普罗米修斯模式;
23 -普罗米修斯到JSON;
24 - CSV到JSON;
25 -替换。
params
(必需)
string预处理选项使用的其他参数。多个参数以LF (\n)字符分隔
error_handler
(必需)
integer预处理步骤失败时使用的动作类型。可能的值:
0 -错误信息被Zabbix服务器设置;
1 -弃值;
2 -设置自定义值;
3 -设置自定义错误信息。
error_handler_params
(必需)
string错误处理程序参数。用于 error_handler
如果 error_handler 为0或1,则必须为空。
error_handler 为2时可以为空。
如果 error_handler 为3,则不能为空。

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

预处理类型名称参数1参数2参数3支持的错误处理程序
1Custom multipliernumber备注1, 60, 1, 2, 3
2Right trimlist of characters备注2
3Left trimlist of characters备注2
4Trimlist of characters备注2
5Regular expressionpattern备注3output备注20, 1, 2, 3
6Boolean to decimal0, 1, 2, 3
7Octal to decimal0, 1, 2, 3
8Hexadecimal to decimal0, 1, 2, 3
9Simple change0, 1, 2, 3
10Change per second0, 1, 2, 3
11XML XPathpath备注40, 1, 2, 3
12JSONPathpath备注40, 1, 2, 3
13In rangemin备注1,6max备注1,60, 1, 2, 3
14Matches regular expressionpattern备注30, 1, 2, 3
15Does not match regular expressionpattern备注30, 1, 2, 3
16Check for error in JSONpath备注40, 1, 2, 3
17Check for error in XMLpath备注40, 1, 2, 3
18Check for error using regular expressionpattern备注3output备注20, 1, 2, 3
19Discard unchanged
20Discard unchanged with heartbeatseconds备注5,6
21JavaScriptscript备注2
22Prometheus patternpattern6, 7output备注6,80, 1, 2, 3
23Prometheus to JSONpattern6, 70, 1, 2, 3
24CSV to JSONcharacter备注2character备注20,10, 1, 2, 3
25Replace searchstring备注2replacement备注2

备注
1 整数或浮点数
2 字符串
3 正则表达式
4 JSONPath或XML XPath
5 正整数(支持时间后缀,如30s, 1m, 2h, 1d)
6 用户宏、LLD宏
7 <metric name>{<label name>= “ <label value> “,…}== <value>。每个Prometheus模式组件(度量值、标签名称、标签值和度量值)可以是user宏或LLD宏。
8 Prometheus的输出格式如下:<label name>