Zabbix_zabbix数据库表各字段说明

前言:网上有很多关于zabbix数据库的资料,但大多是复制+转载,我一直想找一篇博客是关于zabbix数据库表字段的说明,但始终找不到,为此不得不将工作中需要的表字段一一记录,为了防止和我有相同需求的小伙伴和我一样苦逼,现将我总结出来的表字段意思贴出来。

在百度文库上找到一份比较全的参考资料
参考资料:https://wenku.baidu.com/view/8d56c7b489eb172ded63b7ea.html

1.host:主机表

不作全部说明,只说比较重要的和我开发中用到的

hostid:主机的id

proxy_hostid:代理主机的id

host:这里代表主机的ip

status:代表主机的状态:数据库存储有三个值:0代表被监控,1代表未监控,3代表该主机是模板主机
通过zabbix的api的host.get只能获取到状态为0的主机,通过template.get能获取到状态为3的主机

name:主机的别名/昵称

flags:这个主机是否启用:0代表启用,1代表未启用

templateid:模板id(有点像自关联)

description:对主机的描述

2.item:监控项表

itemid:监控项的id

type:监控项的类型:常见的有agent,SNMP,agent(active) 等

hostid:监控项关联的主机id

name:监控项的名称

key_ :监控项item的key值,(数据库中存储的这个key_的内容大概就是监控表达式比如:system.swap.size[,free]这种

delay:配置item时候配置的 “Update Interval”,开发中没用到,不清楚。

history:监控项数据在历史表中保留的时间天数

trends:监控项数据在trends表中保留的天数

status:监控项的状态:0代表能够使用,1代表不能够使用

value_type:重点中的重点:有五个值:

0:numeric float
1:character
2:log
3:numeric unsigned
4:text
分别代表监控项不同的返回类型,这个值决定了监控项的数据会存储在哪张历史表中(历史表一共有五张,分

别对应着这五个值,这个稍后讲解历史表的时候细说)

units:监控项数据的单位

这个也是需要注意的地方:

默认情况下,监控项采集的数据会存储在历史表中,这些采集的数据如果超过1000,zabbix会将其除以1000存储在数据库中

    如果单位是B(byte)或者bps(bytes per second),那么这些采集的数据会除以1024然后存储在数据库中

时间单位:

    unixtime – 转为 “yyyy.mm.dd hh:mm:ss”. 只能使用正数。

    uptime – 转为“hh:mm:ss” 或者“N days, hh:mm:ss”

这些注意事项稍后再历史表中详细叙述

3.history:历史表

历史表一共有五张表:

先说下各字段什么意思

itemid:监控项的id

clock:时间戳,监控项采集数据的触发时间

value:监控项采集数据的值

ns:纳秒,我现在的理解是监控项采集数据这个过程的时间,不知道正不正确,待定。

历史表与监控表的关系:

这也是开发中把我困扰了很久的问题:如何通过监控项id来获取它的监控数据:

①我是通过zabbix的api来获取的,使用history.get来获取历史数据,注意了,这时需要我们传入的参数不止

    一个监控项的id,还需奥传入监控项的value_type,因为如果不传入value_type,history.get方法默认取

    history这个表的数据,如果itemid对应不上,就取不到数据。

②如何设置value_type属性:在history.get总可以传入参数history,这是个Integer类型的参数,

    它对应着item表中的value_type属性,参数的五种类型如下:
        FLOAT(0),
        STRING(1),
        LOG(2),
        INTEGER(3),
        TEXT(4);

③我的解决方案是从页面中传过来的itemid,通过它获取其对应的value_type,然后通过这两个值去查询历史

数据,当然,也可以通过页面将value_type的值直接传过来。

4.hostgroup表:主机群组表

groupid:主机群组的id

name:群组名称

internal:未知

flags:未知

5.application表:应用集表

applicationid:应用集的id

hostid:应用集关联的主机id

name:应用集名称

flags:未知

可能会不定期继续添加其他表字段说明

你可能感兴趣的:(框架学习)