ELK基于ElastAlert实现日志的微信报警 ---docker环境
参考网址:https://github.com/anjia0532/elastalert-docker
1.拉取镜像:
docker pull anjia0532/elastalert-docker:v0.2.4
2.启动容器,根据es实际情况来决定启动参数中是否要设置es访问用户名和密码,我这边设置了
具体使用啥参数,参考网址上有说明
docker run -d -e"ELASTICSEARCH_HOST=192.168.75.21" \
-e"ELASTICSEARCH_USER=elastic" \
-e"ELASTICSEARCH_PASSWORD=IjGj8QwWYeXY7rVoLLQ6" \
-e"CONTAINER_TIMEZONE=Asia/Shanghai" \
-e"TZ=Asia/Shanghai" \
--name es1 anjia0532/elastalert-docker:v0.2.4

3.观察启动后的情况
首先在kibana上查看索引情况,会发现自动创建几个以elastalert开头的索引,效果跟手动执行命令:elastalert-create-index一样

容器日志中也会有相应的显示信息

其次,登陆到容器中,会发现容器默认工作目录是:/opt/elastalert

查看config.yaml文件内容,效果跟手动配置config.yaml文件内容类似

config.yaml文件中的配置可以在启动容器的时候进行指定,参考网址上有详细说明,个别参数的默认配置可以跟config.yaml文件中的参数一 一对应

然后发现容器中/opt/elastalert/rules目录下为空,也就是配置告警规则的目录
手动创建一个微信告警规则文件,wechat.yaml

容器日志中能看到详细的添加信息

手动往filebeat监控的日志文件中添加error的消息,触发报警

企业微信收到的消息,内容跟微信模板一样

总结
可以在启动容器的时候把rules告警规则目录从宿主机上挂载进去,这样就不用每次登陆进容器添加告警规则了
docker run -d -e"ELASTICSEARCH_HOST=192.168.75.21" \
-e"ELASTICSEARCH_USER=elastic" \
-e"ELASTICSEARCH_PASSWORD=IjGj8QwWYeXY7rVoLLQ6" \
-e"CONTAINER_TIMEZONE=Asia/Shanghai" \
-e"TZ=Asia/Shanghai" \
-v /mnt/elastalert/rules:/opt/elastalert/rules \
--name es1 anjia0532/elastalert-docker:v0.2.4
或者事先在宿主机的/mnt/elastalert/rules目录下创建好报警规则,或者等容器启动后再在宿主机的/mnt/elastalert/rules目录创建报警规则都可以
ELK基于ElastAlert实现日志的微信报警 ---docker环境的更多相关文章
- ELK基于ElastAlert实现日志的微信报警
文章转载自:https://mp.weixin.qq.com/s/W9b28CFBEmxBPz5bGd1-hw 教程pdf文件下载地址 https://files.cnblogs.com/files/ ...
- elk监听Java日志发送微信报警
一年前写过logstash根据日志关键词报警 ,今年重温一下.并且记录一下遇到的问题解决办法. Java错误日志一般出现一大坨,如下图: 所以我们的filebeat日志收集器就要改成多行匹配模式,以日 ...
- 【ELK】elastalert 日志告警
一.环境 系统:centos7 elk 版本:7.6.2 1.1 ElastAlert 工作原理 周期性的查询Elastsearch并且将数据传递给规则类型,规则类型定义了需要查询哪些数据. 当一个规 ...
- elasticsearch5之Elastalert 安装使用 配置邮件报警和微信报警
简介 Elastalert是用python2写的一个报警框架(目前支持python2.6和2.7,不支持3.x),github地址为 https://github.com/Yelp/elastaler ...
- 基于ELK进行邮箱访问日志的分析
公司希望能够搭建自己的日志分析系统.现在基于ELK的技术分析日志的公司越来越多,在此也记录一下我利用ELK搭建的日志分析系统. 系统搭建 系统主要是基于elasticsearch+logstash+f ...
- ElastAlert监控日志告警Web攻击行为
由于公司需要监控web攻击行为,而因某些原因搭不了waf,才不得不用ElastAlert进行告警,此为前提. 一.ELK安装 Elasticsearch 是一个分布式.可扩展.实时的搜索与数据分析引擎 ...
- 通过脚本发送zabbix微信报警
实现zabbix通过微信报警的方式也是通过脚本来实现,与邮件报警不同的是,脚本调用的微信的相关接口的获取相对复杂一点 1.申请一个微信公众号(企业号) 申请方法不多说,如果已申请请忽略 2.在微信企业 ...
- ELK+FileBeat+Log4Net搭建日志系统
ELK+FileBeat+Log4Net搭建日志系统 来源:https://www.zybuluo.com/muyanfeixiang/note/608470 标签(空格分隔): ELK Log4Ne ...
- 基于Log4Net本地日志服务简单实现
背景 项目开发中,我们或多或少会使用诸如NLog,Log4Net,Kafka+ELK等等日志套件: 基于关注点分离原则,业务开发的时候不应该关注日志具体实现:并且后续能方便切换其他日志套件: 这里先实 ...
随机推荐
- 渗透测试(PenTest)基础指南
什么是渗透测试? 渗透测试(Penetration Test,简称为 PenTest),是指通过尝试利用漏洞攻击来评估IT基础设施的安全性.这些漏洞可能存在于操作系统.服务和应用程序的缺陷.不当配置或 ...
- Python进程管理神器——Supervisor
一.简介 Supervisor 是一款 Python 开发的进程管理系统,允许用户监视和控制 Linux 上的进程,能将一个普通命令行进程变为后台守护进程,异常退出时能自动重启 详细介绍查阅:Supe ...
- SpringBoot:Redis中的zset
zset被描述为有序集合,但RedisTemplate的OpsForZSet().range方法的返回值是set,那么: 这样直接查询zset返回set的操作会使得元素失去顺序吗? 先明确:Set是什 ...
- docker restart但是容器不重启
有两点: 1.在/etc/docker/daemon.json中添加 "live-restore": true 或手动启用 dockerd --live-restore syste ...
- 07 MySQL_SQL语言分类
SQL语言分类 DDL Data Definition Language 数据定义语言 包括: create , alter ,drop , truncate; 不支持事务 DML Data Mani ...
- 浅谈spring-createBean
目录 找到BeanClass并且加载类 实例化前 实例化 Supplier创建对象 工厂方法创建对象 方法一 方法二 推断构造方法 BeanDefionition 的后置处理 实例化后 属性填充 sp ...
- typescript中的esModuleInterop选项
当没有加esModuleInterop时 库的代码: export const a = 1; export default function b() {} 生成代码 exports.__esModul ...
- 关于2022年3月9日之后Typora登录不了--已解决
p.s.今天是2022.7.27,软件版本:13.6.1 (以下所有方法,亲自尝试后整理出的) 报错信息: This beta version of typora is expired, please ...
- RocketMQ保姆级教程
大家好,我是三友~~ 上周花了一点时间从头到尾.从无到有地搭建了一套RocketMQ的环境,觉得还挺easy的,所以就写篇文章分享给大家. 整篇文章可以大致分为三个部分,第一部分属于一些核心概念和工作 ...
- TS 泛型推断好难啊,看看你能写出来不
前言 最近做东西都在用ts,有时候写比较复杂的功能,如果不熟悉,类型写起来还是挺麻烦的.有这样一个功能,在这里,我们就不以我们现有的业务来举例了,我们还是已Animal举例,来说明场景.通过一个工厂来 ...