> 监控项原型对象
如下对象与itemprototype
API直接相关。
监控项原型
监控项原型有如下属性。
属性 | 类型 | 描述 |
---|---|---|
itemid | string | (只读) 监控项原型的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_traps | integer | HTTP agent监控项原型字段。允许像trapper监控项一样的填充值。 0 - (默认) 不允许接收传入数据。 1 - 允许接收传入数据。 |
authtype | integer | 仅用于SSH agent 监控项原型或者 HTTP agent 监控项原型。 SSH agent认证方法可能的值: 0 - (默认) password; 1 - public key. HTTP agent认证方式可选值: 0 - (default) none 1 - basic 2 - NTLM 3 - Kerberos |
description | string | 监控项原型的说明。 |
follow_redirects | integer | HTTP agent监控项原型字段。当合并数据时跟随重定向。 0 - 不要遵循重定向。 1 - (默认) 遵循重定向。 |
headers | object | HTTP agent监控项原型字段。 带有HTTP(S)的报头,名称是键,报文的值是键的值。 示例: { “User-Agent”: “Zabbix” } |
history | string | 历史数据应被保存的时间。接受用户宏和LLD宏。 默认: 90d. |
http_proxy | string | HTTP agent监控项原型字段。HTTP(S)代理连接字符串。 |
ipmi_sensor | string | IPMI传感器,仅用于IPMI监控项原型。 |
jmx_endpoint | string | JMX agent自定义的连接字符串。 默认值: service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi |
logtimefmt | string | 日志条目的时间格式。仅用于日志监控项原型。 |
master_itemid | integer | 主监控项ID。 递归3层依赖监控项和监控项原型,最大数目的监控项和监控项原型等999是允许的。\依赖项要求。 |
output_format | integer | HTTP agent监控项原型字段。返回数据应被转换为JSON格式。 0 - (默认) Store raw. 1 - Convert to JSON. |
params | string | 附加参数依赖于监控项原型的类型: - SSH和Telnet项目原型执行脚本; - 数据库监控项目原型的SQL查询 - 计算监控项目原型的公式。 |
password | string | 认证的密码。用于simple check, SSH, Telnet, database monitor, JMX and HTTP agent 监控项原型。 |
port | string | 监控的监控项原型的端口。仅用于SNMP监控项原型。 |
post_type | integer | HTTP agent监控项原型字段。存储在post属性的post数据体的类型。 0 - (默认) Raw data. 2 - JSON data. 3 - XML data. |
posts | string | HTTP agent监控项原型字段。HTTP(S) 请求报文数据。用于post_data。 |
privatekey | string | 私钥文件名。 |
publickey | string | 公钥文件名。 |
query_fields | array | HTTP agent监控项原型字段。查询参数。带有键值对的数组对象,值可以为空字符串。 |
request_method | integer | HTTP agent监控项原型字段。请求方法类型。 0 - GET 1 - (默认) POST 2 - PUT 3 - HEAD |
retrieve_mode | integer | HTTP agent监控项原型字段。指定那一部分的响应应该被存储。 0 - (默认) Body. 1 - Headers. 2 - HTTP正文和HTTP标题都将被存储 对于request_method头,只允许值为1。 |
snmp_community | string | SNMP共同体秘钥. 仅用于SNMPv1和SNMPv2监控项原型。 |
snmp_oid | string | SNMP OID. |
ssl_cert_file | string | HTTP agent监控项原型字段。公共SSL key文件路径。 |
ssl_key_file | string | HTTP agent监控项原型字段。私有SSL key文件路径。 |
ssl_key_password | string | HTTP agent监控项原型字段。SSL key文件的密码。 |
status | integer | 监控项原型的状态。 可能的值。 0 - (默认) 启用监控项目原型。 1 - 禁用监控项目原型。 3 - 不支持的监控项目原型。 |
status_codes | string | HTTP agent监控项原型字段。以逗号分隔的要求的HTTP状态码的范围。也接受用户宏和LLD宏。 Example: 200,200-{$M},{$M},200-400 |
templateid | string | (只读)父模板的监控项原型的ID。 |
timeout | string | HTTP agent监控项原型字段。监控项数据合并请求超时时间。支持用户宏和LLD宏。 默认: 3s 最大值: 60s |
trapper_hosts | string | 允许主机。用于trapp监控项原型或者HTTP监控项原型。 |
trends | string | 趋势数据被保存的时间。也接受用户宏和LLD宏。 默认: 365d. |
units | string | 单位 |
username | string | 认证的用户名。用于simple check, SSH, Telnet, database monitor, JMX and HTTP agent 监控项原型。 SSH 和 Telnet 监控项原型要求。 |
valuemapid | string | 相关值映射的ID。 |
verify_host | integer | HTTP agent监控项原型字段。验证URL中的主机名在主机证书中的通用名字段或者备用字段。 0 - (默认) 不验证. 1 - 验证. |
verify_peer | integer | HTTP agent监控项原型字段。主机合法性认证。 0 - (默认) 不验证. 1 - 验证. |
discover | integer | 项目原型发现状态。 可能的值: 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 | 支持的错误处理程序 |
---|---|---|---|---|---|
1 | Custom multiplier | number备注1, 6 | 0, 1, 2, 3 | ||
2 | Right trim | list of characters备注2 | |||
3 | Left trim | list of characters备注2 | |||
4 | Trim | list of characters备注2 | |||
5 | Regular expression | pattern备注3 | output备注2 | 0, 1, 2, 3 | |
6 | Boolean to decimal | 0, 1, 2, 3 | |||
7 | Octal to decimal | 0, 1, 2, 3 | |||
8 | Hexadecimal to decimal | 0, 1, 2, 3 | |||
9 | Simple change | 0, 1, 2, 3 | |||
10 | Change per second | 0, 1, 2, 3 | |||
11 | XML XPath | path备注4 | 0, 1, 2, 3 | ||
12 | JSONPath | path备注4 | 0, 1, 2, 3 | ||
13 | In range | min备注1,6 | max备注1,6 | 0, 1, 2, 3 | |
14 | Matches regular expression | pattern备注3 | 0, 1, 2, 3 | ||
15 | Does not match regular expression | pattern备注3 | 0, 1, 2, 3 | ||
16 | Check for error in JSON | path备注4 | 0, 1, 2, 3 | ||
17 | Check for error in XML | path备注4 | 0, 1, 2, 3 | ||
18 | Check for error using regular expression | pattern备注3 | output备注2 | 0, 1, 2, 3 | |
19 | Discard unchanged | ||||
20 | Discard unchanged with heartbeat | seconds备注5,6 | |||
21 | JavaScript | script备注2 | |||
22 | Prometheus pattern | pattern6, 7 | output备注6,8 | 0, 1, 2, 3 | |
23 | Prometheus to JSON | pattern6, 7 | 0, 1, 2, 3 | ||
24 | CSV to JSON | character备注2 | character备注2 | 0,1 | 0, 1, 2, 3 |
25 | Replace search | string备注2 | replacement备注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>
。