参考网址: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环境的更多相关文章

  1. ELK基于ElastAlert实现日志的微信报警

    文章转载自:https://mp.weixin.qq.com/s/W9b28CFBEmxBPz5bGd1-hw 教程pdf文件下载地址 https://files.cnblogs.com/files/ ...

  2. elk监听Java日志发送微信报警

    一年前写过logstash根据日志关键词报警 ,今年重温一下.并且记录一下遇到的问题解决办法. Java错误日志一般出现一大坨,如下图: 所以我们的filebeat日志收集器就要改成多行匹配模式,以日 ...

  3. 【ELK】elastalert 日志告警

    一.环境 系统:centos7 elk 版本:7.6.2 1.1 ElastAlert 工作原理 周期性的查询Elastsearch并且将数据传递给规则类型,规则类型定义了需要查询哪些数据. 当一个规 ...

  4. elasticsearch5之Elastalert 安装使用 配置邮件报警和微信报警

    简介 Elastalert是用python2写的一个报警框架(目前支持python2.6和2.7,不支持3.x),github地址为 https://github.com/Yelp/elastaler ...

  5. 基于ELK进行邮箱访问日志的分析

    公司希望能够搭建自己的日志分析系统.现在基于ELK的技术分析日志的公司越来越多,在此也记录一下我利用ELK搭建的日志分析系统. 系统搭建 系统主要是基于elasticsearch+logstash+f ...

  6. ElastAlert监控日志告警Web攻击行为

    由于公司需要监控web攻击行为,而因某些原因搭不了waf,才不得不用ElastAlert进行告警,此为前提. 一.ELK安装 Elasticsearch 是一个分布式.可扩展.实时的搜索与数据分析引擎 ...

  7. 通过脚本发送zabbix微信报警

    实现zabbix通过微信报警的方式也是通过脚本来实现,与邮件报警不同的是,脚本调用的微信的相关接口的获取相对复杂一点 1.申请一个微信公众号(企业号) 申请方法不多说,如果已申请请忽略 2.在微信企业 ...

  8. ELK+FileBeat+Log4Net搭建日志系统

    ELK+FileBeat+Log4Net搭建日志系统 来源:https://www.zybuluo.com/muyanfeixiang/note/608470 标签(空格分隔): ELK Log4Ne ...

  9. 基于Log4Net本地日志服务简单实现

    背景 项目开发中,我们或多或少会使用诸如NLog,Log4Net,Kafka+ELK等等日志套件: 基于关注点分离原则,业务开发的时候不应该关注日志具体实现:并且后续能方便切换其他日志套件: 这里先实 ...

随机推荐

  1. 在 SQL Server 中使用 Try Catch 处理异常

    如何在 SQL Server 中使用 Try Catch 处理错误? 从 SQL Server 2005 开始,我们在TRY 和 CATCH块的帮助下提供了结构错误处理机制.使用TRY-CATCH的语 ...

  2. C++对象的应用

    本篇文章将介绍对象数组,对象的动态分配以及对象在函数中的应用. 一.对象数组 1.对象数组的定义和初始化 定义对象数组与定义普通数组的语法形式基本相同.如定义一个Square obj[3]:表示一个正 ...

  3. 基于ABP实现DDD--聚合和聚合根实践

      在下面的例子中涉及Repository.Issue.Label.User这4个聚合根,接下来以Issue聚合为例进行分析,其中Issue聚合是由Issue[聚合根].Comment[实体].Iss ...

  4. CF1706A Another String Minimization Problem 题解

    题意 给定一个长度为 \(n\) 的序列 \(a\) 以及一个长度为 \(m\) 的字符串 \(s\),初始 \(s\) 均为 \(\text{B}\),第 \(i\) 次操作可以把 \(s_{a_i ...

  5. 为什么Java有GC调优而没听说过有CLR的GC调优?

    前言 在很多的场合我都遇到过一些群友提这样的一些问题: 为什么Java有GC调优而CLR没有听说过有GC调优呢? 到底是Java的JVM GC比较强还是C#使用的.NET CLR的GC比较强呢? 其实 ...

  6. 题解【AtCoder - CODE FESTIVAL 2017 qual B - D - 101 to 010】

    题目:https://atcoder.jp/contests/code-festival-2017-qualb/tasks/code_festival_2017_qualb_d 题意:给一个 01 串 ...

  7. 修改后台传过来的json数据中对象的属性

    前言 今天在实习中遇到的一个小问题,后端传过来的一个json数据结构,但是对象中的属性名跟我需要的不一样(因为我是渲染echarts中的数据,属性名要一样) 这是后台传过来的数据: 需求是我需要把属性 ...

  8. ATOM使用的一点心得与技巧——在一个窗口打开多个项目

    atom作为一个后起之秀,我个人是觉得越用越好用.虽然sublimet也很棒,但是在ubuntu里不能使用中文很是恼火.网上关于修复这个bug的办法实在太多了.果断选择省事的atom.虽然比起subl ...

  9. 048_末晨曦Vue技术_处理边界情况之使用$root访问根实例

    处理边界情况之使用$root访问根实例 点击打开视频教程 在每个 new Vue 实例的子组件中,其根实例可以通过 $root property 进行访问. 例如,在这个根实例中: src\main. ...

  10. Linux操作系统学习(运维必会)

    Linux一切皆文件,最高权限的账户root. 1.开机登录 开机会启动很多进程,在Windows上叫"服务"(service),在Linux上叫做"守护进程" ...