查看zabbix历史告警数据

664 阅读1分钟

早上一到公司,研发就提出查看昨天晚上的历史告警。

查看历史告警需求.png

得了,干活儿吧

思路就是进入zabbix数据库,通过查询alerts表得到数据。 先看下alerts表的字段:

MariaDB [zabbix]> desc alerts;
+---------------+---------------------+------+-----+---------+-------+
| Field         | Type                | Null | Key | Default | Extra |
+---------------+---------------------+------+-----+---------+-------+
| alertid       | bigint(20) unsigned | NO   | PRI | NULL    |       |
| actionid      | bigint(20) unsigned | NO   | MUL | NULL    |       |
| eventid       | bigint(20) unsigned | NO   | MUL | NULL    |       |
| userid        | bigint(20) unsigned | YES  | MUL | NULL    |       |
| clock         | int(11)             | NO   | MUL | 0       |       |
| mediatypeid   | bigint(20) unsigned | YES  | MUL | NULL    |       |
| sendto        | varchar(1024)       | NO   |     |         |       |
| subject       | varchar(255)        | NO   |     |         |       |
| message       | text                | NO   |     | NULL    |       |
| status        | int(11)             | NO   | MUL | 0       |       |
| retries       | int(11)             | NO   |     | 0       |       |
| error         | varchar(2048)       | NO   |     |         |       |
| esc_step      | int(11)             | NO   |     | 0       |       |
| alerttype     | int(11)             | NO   |     | 0       |       |
| p_eventid     | bigint(20) unsigned | YES  | MUL | NULL    |       |
| acknowledgeid | bigint(20) unsigned | YES  | MUL | NULL    |       |
| parameters    | text                | NO   |     | NULL    |       |
+---------------+---------------------+------+-----+---------+-------+
17 rows in set (0.00 sec)

我只需要告警主题subject和告警信息message两个字段就可以了。

select subject,message from alerts where subject LIKE "%High ICMP ping%" and message LIKE "%老师媒体%" limit 300;

Problem: High ICMP ping response time | 故障告警----服务器: { 49667_BGP_北京老师媒体490_阿里. }  发生  :High ICMP ping response time故障!
告警主机: { 49667_BGP_北京老师媒体490_阿里. }
主机地址: 59.110.12.72
告警等级: Warning
告警信息: High ICMP ping response time
告警项目: icmppingsec
ICMP response time:248ms
告警时间: 2022.04.01 19:50:49
当前状态: PROBLEM

导出结果,用shell命令把结果过滤就行了,完事儿~。~