一、场景说明
在我们的生产环境中,为了保证业务系统稳定高效
日志告警实现其实有个插件,叫做ElastAlert,这款插件是Yelp 公司基于python开发的ELK 日志报警插件;本篇文章,我是通过logstash中去过滤日志关键词进行告警的,实现告警信息通过邮箱和企业微信机器人的方式进行通知。
这里呢,我只是提供一个简单的实现方式的思路,不一定完全适合你的项目,再一个就是ELK这个可研究性太多了,还是需要大家自己去琢磨研究了!
- 说明:这里我是基于Nginx的日志进行演示的,ELK的安装以及Nginx日志采集可以查看之前我写的文章。
二、邮箱告警
1、创建片段文件
- 在
logstash的配置目录下创建一个Nginx的片段文件 - 这段配置,主要是通过判断
message中的304状态码然后触发告警
注意:添加邮箱配置后必须重启logstash才会生效
2、测试邮箱告警
- 浏览器多次访问Nginx页面。然后查看ES是否已经创建了对应的索引,如果有了索引,然后查看邮箱是否接收到了告警邮件
- 以下方式运行logstash会把日志信息打印在前台,有助于我们进行测试
[root@logstash ~]# /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/nginx-log.conf

- 查看ES是否创建了索引
[root@es-node1 ~]# curl -sXGET --user elastic:dqKxwJy3PKjCROUY4XZM http://192.168.66.14:9200/_cat/indices?v

filebeat所运行的节点可以先停止通过systemd启动的进程,然后以命令行方式启动,可以进行测试查看实时采集的日志信息,有助于我们排错

- 检查邮箱,邮箱中已经收到了告警邮件

三、企业微信告警
- 我们首先需要在企业微信群组中创建一个群机器人,然后获取到机器人的token,最后在
logstash中配置调用机器人token实现告警 - 注意:
logstash所在服务器必须可以连接到外网,不然无法发送告警信息到机器人
这块,其实只需要将上面邮箱的配置改为企业微信机器人相关的配置即可,配置如下
下图展示的是钉钉机器人的告警截图,实现方式与企业微信类似,企业微信token改为钉钉机器人token即可。



谢谢大佬分享
谢谢大佬分享
谢谢大佬分享
谢谢大佬分享
elk实现了日志监控
谢谢大佬分享
不错的文章 学习下
学习查看一下
网站做的不错
学习一下具体思路