以下objects与itemprototype
API直接相关。
监控项原型object具有以下属性
属性 | 数据类型 | 描述 |
---|---|---|
itemid | string | (只读) 监控项原型的ID。 |
delay (required) |
string | 监控项原型的更新间隔。接受秒数或带后缀的时间单位(30s,1m,2h,1d)。 可选择性地指定一个或多个custom intervals作为灵活间隔或调度计划。 多个间隔用分号分隔。 可使用用户宏和LLD宏。单个宏必须填满整个字段,不支持字段中包含多个宏或宏与文本混合使用。 灵活间隔可写成两个由斜杠分隔的宏(例如 {$FLEX_INTERVAL}/{$FLEX_PERIOD} )。对于Zabbix trapper、依赖监控项以及使用 mqtt.get 键的Zabbix agent(主动模式)为可选配置。 |
hostid (required) |
string | 监控项原型所属的主机 ID。 对于update操作,此字段为只读。 |
ruleid (required) |
string | 该监控项所属的LLD规则ID。 对于update操作,此字段为只读。 |
interfaceid (required) |
string | 监控项原型主机接口的ID。仅用于主机监控项原型。 不适用于Zabbix agent(主动式)、Zabbix内置、Zabbix捕捉器、计算型、依赖型、数据库监控和脚本监控项原型。HTTPagent监控项原型为可选字段。 |
key_ (required) |
string | 监控项 原型键. |
name (required) |
string | 监控项原型名称。 |
type (required) |
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 监控项; 19 - HTTP agent; 20 - SNMP agent; 21 - Script. |
url (required) |
string | URL string 仅HTTP agent 监控项原型需要. 支持LLD宏、用户宏、{HOST.IP}、{HOST.CONN}、{HOST.DNS}、{HOST.HOST}、{HOST.NAME}、{ITEM.ID}、{ITEM.KEY}. |
value_type (required) |
integer | 监控项原型的信息类型。 可选值: 0 - 数值型float; 1 - 字符型; 2 - 日志型; 3 - 无符号数值型; 4 - 文本型。 |
allow_traps | integer | HTTP agent 监控项 原型字段. 允许像trapper 监控项类型一样填充值. 0 - (默认) 不允许接收传入数据. 1 - 允许接收传入数据. |
authtype | integer | 仅用于SSH agent 监控项原型或HTTP agent 监控项原型. SSH agent认证方法可能取值: 0 - (默认) 密码; 1 - 公钥. HTTP agent认证方法可能取值: 0 - (默认) 无 1 - basic 2 - NTLM 3 - Kerberos |
description | string | 监控项原型描述. |
follow_redirects | integer | HTTP agent 监控项 原型字段。在轮询数据时跟随响应重定向。 0 - 不跟随重定向。 1 - (默认) 跟随重定向。 |
headers | object | HTTP agent 监控项 原型字段. object 包含HTTP(S)请求头, 其中头名称作为键, 头值作为值. 示例: { "User-Agent": "Zabbix" } |
history | string | 历史数据应存储的时间单位. 支持用户宏和LLD宏. 默认值: 90d. |
http_proxy | string | HTTP agent 监控项 原型字段. HTTP(S) proxy 连接 string. |
ipmi_sensor | string | IPMI传感器。仅由IPMI 监控项原型使用。 |
jmx_endpoint | string | JMX agent 自定义连接 string. 默认值: service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi |
logtimefmt | string | 日志条目中的时间格式。仅由日志 监控项原型 使用。 |
master_itemid | integer | 主监控项 ID. 允许递归最多3层依赖监控项和监控项原型,且依赖监控项和监控项原型的最大数量为29999. 依赖监控项所需字段. |
output_format | integer | HTTP agent 监控项 原型字段。是否应将响应转换为JSON。 0 - (默认) 存储原始数据。 1 - 转换为JSON。 |
params | string | 根据监控项原型类型所需的附加参数: - SSH和Telnet监控项原型的执行脚本; - 数据库监控监控项原型的SQLquery; - 计算型监控项原型的公式。 |
parameters | array | 脚本 监控项原型 的附加参数。包含 objects 的 array,需具有 '名称' 和 'value' 属性,其中名称必须唯一。 |
password | string | 用于身份验证的密码。被简单检查、SSH、Telnet、数据库监控、JMX和HTTP agent 监控项原型使用。 |
post_type | integer | HTTP agent 监控项 原型字段. 存储在posts属性中的post数据体类型. 0 - (默认) 原始数据. 2 - JSON数据. 3 - XML数据. |
posts | string | HTTP agent 监控项 原型字段。HTTP(S)请求体数据。需与post_type配合使用。 |
privatekey | string | 私钥名称 file. |
publickey | string | 公钥名称 file. |
query_fields | array | HTTP agent 监控项 原型字段。 query 参数。 array 的 objects 包含 'key':'value' 键值对,其中值可为空 string。 |
request_method | integer | HTTP agent 监控项 原型字段. 请求方法类型. 0 - (默认) GET 1 - POST 2 - PUT 3 - HEAD |
retrieve_mode | integer | HTTP agent 监控项 原型字段。应存储响应的哪部分内容。 0 - (默认) 正文 1 - 头部信息 2 - 同时存储正文和头部信息 对于 request_method HEAD 仅允许值为1 |
snmp_oid | string | SNMP OID. |
ssl_cert_file | string | HTTP agent 监控项 原型字段. 公钥SSL file 路径. |
ssl_key_file | string | HTTP agent 监控项 原型字段。私有SSL密钥 file 路径。 |
ssl_key_password | string | HTTP agent 监控项 原型字段. SSL密钥密码 file. |
status | integer | 监控项原型状态. 可能取值: 0 - (默认) 启用监控项原型; 1 - 禁用监控项原型; 3 - 不支持的监控项原型. |
status_codes | string | HTTP agent 监控项 原型字段。以逗号分隔的所需HTTP状态码范围。支持用户宏或LLD宏作为逗号分隔列表的一部分。 示例:200,200-{$M},{$M},200-400 |
templateid | string | (只读) 父模板 监控项 原型ID。 |
timeout | string | 监控项 数据轮询请求超时。用于HTTP agent 和脚本 监控项原型。支持用户宏和LLD宏。 默认值: 3秒 最大值: 60秒 |
trapper_hosts | string | 允许的 主机。用于 trapper 监控项原型 或 HTTP 监控项原型。 |
trends | string | 趋势数据应存储的时间单位。同时支持用户宏和LLD宏。 默认值: 365d. |
units | string | 数值单位 |
username | string | 用于认证的用户名. 被简单检查、SSH、Telnet、数据库监控、JMX和HTTP agent 监控项原型使用. SSH和Telnet 监控项原型必填字段. |
uuid | string | 通用唯一标识符,用于将导入的监控项原型与已存在的关联。仅适用于模板上的监控项原型。若未提供则自动生成。 |
valuemapid | string | 关联值映射的ID。 |
verify_host | integer | HTTP agent 监控项 原型字段。是否验证连接的 主机 名称与 主机 证书中的名称匹配。 0 - (默认) 不验证。 1 - 验证。 |
verify_peer | integer | HTTP agent 监控项 原型字段。是否验证 主机 的证书真实性。 0 - (默认) 不验证。 1 - 验证。 |
discover | integer | 监控项 原型发现状态。 可能取值: 0 - (默认) 新 监控项 将被发现; 1 - 新 监控项 将不被发现且现有 监控项 将被标记为丢失。 |
请注意,某些方法(update、delete)所需/可选参数的组合有所不同。
监控项原型标签object具有以下属性.
属性 | 数据类型 | 描述 |
---|---|---|
tag (required) |
string | 监控项原型标签名称. |
value | string | 监控项原型标签值. |
监控项原型预处理object具有以下属性。
属性 | 数据类型 | 描述 |
---|---|---|
type (required) |
integer | 预处理选项类型。 可能值: 1 - 自定义乘数; 2 - 右修剪; 3 - 左修剪; 4 - 修剪; 5 - 正则表达式匹配; 6 - boolean转十进制; 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。 |
params (required) |
string | 预处理选项使用的附加参数。多个参数用LF(\n)字符分隔。 |
error_handler (required) |
integer | 预处理步骤失败时使用的操作类型。 可能值: 0 - 错误消息由Zabbix server设置; 1 - 丢弃值; 2 - 设置自定义值; 3 - 设置自定义错误消息。 |
error_handler_params (required) |
string | 错误处理程序参数。与error_handler 一起使用。如果 error_handler 为0或1,则必须为空。如果 error_handler 为2,可以为空。如果 error_handler 为3,则不能为空。 |
每种预处理类型支持以下参数和错误处理程序。
预处理类型 | 名称 | 参数1 | 参数2 | 参数3 | 支持的错误处理程序 |
---|---|---|---|---|---|
1 | Custom multiplier | number1, 6 | 0, 1, 2, 3 | ||
2 | Right trim | list of characters2 | |||
3 | Left trim | list of characters2 | |||
4 | Trim | list of characters2 | |||
5 | Regular expression | pattern3 | output2 | 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 | path4 | 0, 1, 2, 3 | ||
12 | JSONPath | path4 | 0, 1, 2, 3 | ||
13 | In range | min1, 6 | max1, 6 | 0, 1, 2, 3 | |
14 | Matches regular expression | pattern3 | 0, 1, 2, 3 | ||
15 | Does not match regular expression | pattern3 | 0, 1, 2, 3 | ||
16 | Check for error in JSON | path4 | 0, 1, 2, 3 | ||
17 | Check for error in XML | path4 | 0, 1, 2, 3 | ||
18 | Check for error using regular expression | pattern3 | output2 | 0, 1, 2, 3 | |
19 | Discard unchanged | ||||
20 | Discard unchanged with heartbeat | seconds5, 6 | |||
21 | JavaScript | script2 | |||
22 | Prometheus pattern | pattern6, 7 | value , label , function |
output8, 9 | 0, 1, 2, 3 |
23 | Prometheus to JSON | pattern6, 7 | 0, 1, 2, 3 | ||
24 | CSV to JSON | character2 | character2 | 0,1 | 0, 1, 2, 3 |
25 | Replace | search string2 | replacement2 | ||
26 | Check unsupported | 1, 2, 3 | |||
27 | XML to JSON | 0, 1, 2, 3 |
1 integer或浮点数
2 string
3 正则表达式
4 JSONPath或XML XPath
5 正integer(支持时间后缀,如30s、1m、2h、1d)
6 用户宏、LLD宏
7 遵循语法的Prometheus模式:<metric name>{<label name>="<label value>", ...} == <value>
。每个Prometheus模式组件(指标、标签名、标签值和指标值)可以是用户宏或LLD宏。
8 遵循语法的Prometheus输出:<label name>
(可以是用户宏或LLD宏),如果选择label
作为第二个参数。
9 聚合函数之一:sum
、min
、max
、avg
、count
,如果选择function
作为第二个参数。