zabbix数据库表结构解析

 

 

 下面开始介绍:

1.添加监控表结构详解

(1)hosts,存储被监控的机器的信息,表结构如下:

 

(2)items

(3)hosts_templates,存储机器和模版或者模版和模版之间的关系

由于模版和机器都存储在hosts表中,所以hosts_templates和hosts 之间可以hostid关联也可以通过templateid关联。

 (4)interface,存储了所有设备的ip和端口的数据。(由于hosts表中不仅保存了设备信息还保存了模版信息,所以统计实际监控的设备,此表更加准确)
 

 2.数据存储表结构详解

 

将clock 转化为人性化时间:

3.报警相关表结构详解

 
(1)triggers

 

 

 

附 functions 表结构:

 (2)events

 

 

例子:

1. 找出某台主机的所有items ,含有某个key_的item , 统计items 总个数
SELECT * FROM HOSTS WHERE hostid=10157;
SELECT * FROM items WHERE hostid=10157 AND key_ LIKE '%agent%';
SELECT COUNT(*) FROM items;

2. 找出触发trigger次数最多的事件,并按trigger 降序排列。
SELECT a.description, COUNT(*) cnt FROM TRIGGERS a , EVENTS b
WHERE a.triggerid=b.objectid ORDER BY cnt DESC ;
3. 从item记录各找出一个value类型为整形,浮点型的key_。
统计这两个key_ 存储在history或者history_uint 某一个时间段(比如2017/06/12)
的最大值,最小值,平均值,然后与 trends 或者 trends_unint 中相应时间段做对比

整型
SELECT * FROM items WHERE value_type=3 AND hostid=10157 LIMIT 1;
SELECT * FROM history_uint a,trends_uint b WHERE a.clock=b.clock AND a.itemid=b.itemid LIMIT 1;

浮点型
SELECT * FROM items WHERE value_type=0 AND hostid=10157 LIMIT 1;
SELECT * FROM history a,trends b WHERE a.clock=b.clock AND a.itemid=b.itemid LIMIT 1;

 

4.统计Zabbix Dashboard中triggers总数的来源。

SELECT  count(*)
  FROM TRIGGERS
WHERE triggerid IN
       (SELECT triggerid
          FROM functions
         WHERE itemid IN (SELECT itemid
                            FROM items
                           WHERE hostid IN (SELECT hostid FROM interface)
                             AND key_ NOT LIKE '%#%'
                             AND key_ NOT LIKE '%discovery%'
                             AND STATUS != 1));
 
说明:
通过之前对zabbix 表结构的学习,我们知道,表 triggers functions 相关联,而 functions items 相关联,那么,要对 triggers 做统计,就需要从这三张表下手。
关键就是对items 表中的数据做出筛选, key_ 中带“ # ”和“ discovery ”的和 status=1 (不可用状态)都要排除,这样就统计出来了。

转载于:https://www.cnblogs.com/wumingxiaoyao/p/7412312.html

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值