7 换行符分隔的 JSON 导出协议

本节以换行符分隔的 JSON 格式呈现了 export 协议的详细信息,该格式用于:

以下内容可以被导出:

所有文件的扩展名为 .ndjson。每行的 export file 是一个 JSON object。

触发器事件

以下信息将导出为问题事件:

字段 类型 说明
clock number 自 Epoch 起至问题被检测到时的秒数(integer 部分)。
ns number 需要添加到 clock 的纳秒数,以 get 精确的问题检测时间。
value number 1(始终如此)。
eventid number 问题事件 ID。
name string 问题事件名称。
severity number 问题事件严重性(0 - 未分类,1 - 信息,2 - 警告,3 - 平均,4 - 高,5 - 灾难)。
hosts array 触发器表达式中涉及的主机列表;array中至少应有一个元素。
- object
主机 string 主机名。
name string 可见的 主机名。
groups array 触发器表达式中所有涉及的主机的主机组列表;array中至少应有一个元素。
- string 主机组名称。
tags array 问题标签列表(可能为空)。
- object
tag string 标签名称。
value string 标签值(可能为空)。

以下信息将导出为恢复事件:

字段 类型 说明
clock number 自 Epoch 起至问题被解决时的秒数(integer 部分)。
ns number 需要添加到 clock 的纳秒数,以 get 精确的问题解决时间。
value number 0(始终如此)。
eventid number 恢复事件 ID。
p_eventid number 问题事件 ID。
示例

问题:

{"clock":1519304285,"ns":123456789,"value":1,"name":"Either Zabbix agent 不可达于 主机 B 或者 Zabbix server 上的轮询器过于繁忙","severity":3,"eventid":42, "主机":[{"主机":"主机 B", "name":"主机 B 可见"},{"主机":"Zabbix server","name":"Zabbix server 可见"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}]}

恢复:

{"clock":1519304345,"ns":987654321,"value":0,"eventid":43,"p_eventid":42}

问题(多个问题事件生成):

{"clock":1519304286,"ns":123456789,"value":1,"eventid":43,"name":"Either Zabbix agent 不可达于 主机 B 或者 Zabbix server 上的轮询器过于繁忙","severity":3,"主机":[{"主机":"主机 B", "name":"主机 B 可见"},{"主机":"Zabbix server","name":"Zabbix server 可见"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}]}
       
       {"clock":1519304286,"ns":123456789,"value":1,"eventid":43,"name":"Either Zabbix agent 不可达于 主机 B 或者 Zabbix server 上的轮询器过于繁忙","severity":3,"主机":[{"主机":"主机 B", "name":"主机 B 可见"},{"主机":"Zabbix server","name":"Zabbix server 可见"}],"groups":["Group X","Group Y","Group Z","Zabbix servers"],"tags":[{"tag":"availability","value":""},{"tag":"data center","value":"Riga"}]}

恢复:

{"clock":1519304346,"ns":987654321,"value":0,"eventid":44,"p_eventid":43}
       
       {"clock":1519304346,"ns":987654321,"value":0,"eventid":44,"p_eventid":42}

监控项值

以下信息是针对一个已收集的 监控项 值的导出内容:

字段 类型 描述
host object 监控项 主机的主机名。
主机 string 主机名。
名称 string 可见的 主机名。
groups array 监控项 主机的主机组列表;array中至少应包含一个元素。
- string 主机组名称。
item_tags array 监控项标签列表(可以为空)。
- object
标签 string 标签名称。
string 标签值(可以为空)。
itemid number 监控项 ID。
name string 可见的 监控项 名称。
clock number 自纪元以来到值被收集时的秒数(integer部分)。
ns number 要添加到 clock 的纳秒数,以get精确的值收集时间。
timestamp
(Log only)
number 如果不可用则为0。
source
(Log only)
string 如果不可用则为空的string。
severity
(Log only)
number 如果不可用则为0。
eventid
(Log only)
number 如果不可用则为0。
value number (for numeric items) or
string (for text items)
已收集的 监控项 值。
type number 已收集的值类型:
0 - 数值型float,1 - 字符,2 - 日志,3 - 无符号数值,4 - 文本,5 - 二进制
示例

数值(无符号):

{"主机":{"主机":"主机 B","name":"主机 B 可见"},"groups":["Group X","Group Y","Group Z"],"item_tags":[{"tag":"foo","value":"test"}],"itemid":3,"name":"Agent 可用性","clock":1519304285,"ns":123456789,"value":1,"type":3}

数值(float):

{"主机":{"主机":"主机 B","name":"主机 B 可见"},"groups":["Group X","Group Y","Group Z"],"item_tags":[{"tag":"foo","value":"test"}],"itemid":4,"name":"CPU 负载","clock":1519304285,"ns":123456789,"value":0.1,"type":0}

字符、文本值:

{"主机":{"主机":"主机 B","name":"主机 B 可见"},"groups":["Group X","Group Y","Group Z"],"item_tags":[{"tag":"foo","value":"test"}],"itemid":2,"name":"Agent 版本","clock":1519304285,"ns":123456789,"value":"3.4.4","type":4}

日志值:

{"主机":{"主机":"主机 A","name":"主机 A 可见"},"groups":["Group X","Group Y","Group Z"],"item_tags":[{"tag":"foo","value":"test"}],"itemid":1,"name":"日志文件中的消息","clock":1519304285,"ns":123456789,"timestamp":1519304285,"source":"","severity":0,"eventid":0,"value":"日志 file 消息","type":2}

趋势数据

导出的计算趋势值信息如下:

字段 类型 说明
host object 监控项 主机的主机名。
主机 string 主机名。
名称 string 可见的主机名。
groups array 监控项 主机的主机组列表;array中至少应包含一个元素。
- string 主机组名称。
item_tags array 监控项标签列表(可以为空)。
- object
标签 string 标签名称。
string 标签值(可以为空)。
itemid number 监控项 ID。
name string 可见的监控项名称。
clock number 自Epoch时间以来采集值的秒数(integer部分)。
count number 给定小时内采集的值的数量。
min number 给定小时内监控项值的最小值。
avg number 给定小时内监控项值的平均值。
max number 给定小时内监控项值的最大值。
type number 值类型:
0 - 数值float,3 - 无符号数值
示例

数值(无符号):

{"主机":{"主机":"主机 B","name":"主机 B 可见"},"groups":["Group X","Group Y","Group Z"],"item_tags":[{"tag":"foo","value":"test"}],"itemid":3,"name":"Agent 可用性","clock":1519311600,"count":60,"min":1,"avg":1,"max":1,"type":3}

数值(float):

{"主机":{"主机":"主机 B","name":"主机 B 可见"},"groups":["Group X","Group Y","Group Z"],"item_tags":[{"tag":"foo","value":"test"}],"itemid":4,"name":"CPU 负载","clock":1519311600,"count":60,"min":0.01,"avg":0.15,"max":1.5,"type":0}