组成

1、efk: 日志收集框架

2、estalert: 是基于 Elasticsearch 的报警工具

3、elastalert-kibana-plugin : kibana中elastalert插件,可以实现在kibana界面上编辑elastalert的告警规则配置。

4、alerta: 告警集中收集平台,elastalert告警规则可以配置alerta为接收平台。之前npgstack中alerta作为监控指标信息告警接收平台,日志信息告警配置为同一个alerta作为告警接收平台,实现一个界面管理和观察多种维度的告警信息。

部署

上一篇文章使用docker-compose来部署efk日志收集框架,这样通过改造kibana容器镜像,把elastalert-kibana-plugin插件安装上。在yml文件增加服务elastalert。

改造kibana容器镜像,Dockerfile文件内容如下:

FROM kibana/kibana-oss:7.5.0
COPY ./elastalert-kibana-plugin-1.1.0-7.5.0.zip /tmp/
RUN ["kibana-plugin", "install", "file:///tmp/elastalert-kibana-plugin-1.1.0-7.5.0.zip"]

执行命令构建镜像

docker build -f Dockerfile -t kibana/kibana-oss:7.5.0-ea .

docker-compose.yml增加服务elastalert。

---
version: '2'
services:elastalert:image: bitsensor/elastalert:3.0.0-beta.1ports:- 3030:3030- 3333:3333volumes:- ./elastalert/config/elastalert.yaml:/opt/elastalert/config.yaml- ./elastalert/config/elastalert-test.yaml:/opt/elastalert/config-test.yaml- ./elastalert/config/config.json:/opt/elastalert-server/config/config.json- ./elastalert/rules:/opt/elastalert/rules- ./elastalert/rule_templates:/opt/elastalert/rule_templatesnetwork_mode: "bridge"links:- "elasticsearch"elasticsearch:image: elasticsearch/elasticsearch-oss:7.6.2environment:- 'node.name=HEYJUDE'- 'discovery.type=single-node'- 'bootstrap.memory_lock=true'- 'ES_JAVA_OPTS=-Xms256m -Xmx256m'ports:- 9200:9200- 9300:9300volumes:- ./elasticsearch:/usr/share/elasticsearch/datanetwork_mode: "bridge"kibana:image: kibana/kibana-oss:7.5.0-eaports:- 5601:5601volumes:- ./kibana/config/kibana.yml:/usr/share/kibana/config/kibana.ymlnetwork_mode: "bridge"links:- "elasticsearch"- "elastalert"fluentd:image: fluent/fluentd:v1.4.2-2.0-esports:- 24224:24224- 24224:24224/udpvolumes:- ./fluentd/etc:/fluentd/etcnetwork_mode: "bridge"links:- "elasticsearch"networks:default:external:name: bridge

kibana服务增加配置项如下:

# cat kibana/config/kibana.yml
#
# ** THIS IS AN AUTO-GENERATED FILE **
## Default Kibana configuration for docker target
server.name: kibana
server.host: "0"
elasticsearch.hosts: [ "http://elasticsearch:9200" ]
elastalert-kibana-plugin.serverHost: elastalert
elastalert-kibana-plugin.serverPort: 3030

alerta使用的是npgstack中的服务alerta。

elastalert测试告警规则

配置测试告警规则如下:

es_host: elasticsearch
es_port: 9200
name: test
type: frequency
index: fluent*
num_events: 5
timeframe:hours: 6
filter:
- term:log: "error"
alert:- alerta
alerta_api_url: "http://192.168.122.61:8889/api/alert"
alerta_api_key: "BU0SYnGHu9_1qEiWM12rXP7yMAZkFldWcupRIU7x"
alerta_text: "error in log"
alerta_value: "error"
alerta_event: "error_log"

告警规则表明,如果6小时内es中索引为fluent*的log字段出现error信息达到5次,则触发一个告警到alerta中。

告警类型:frequency

alerta显示界面配置:alerta_text,alerta_value,alerta_event。

其他的配置项容易理解。


在alerta界面看到的告警信息。

efk-elastalert-alerta集中日志自动告警相关推荐

  1. AZURE 日志分析自动告警

    小伙伴们好久不见,今天我们来聊聊中国 AZURE 的日志分析告警.为什么是中国 AZURE,目前中国 AZURE 的 Monitor 服务和运维相关周围服务和 Global 是有所不同的,所以有些功能 ...

  2. Kippo蜜罐的部署、诱捕节点的搭建以及自动告警

    Kippo是一个中等交互的SSH蜜罐,提供了一个可供攻击者操作的shell,攻击者可以通过SSH登录蜜罐,并做一些常见的命令操作. 当攻击者拿下一台服务器的权限后,很可能会进行小范围的端口探测或者批量 ...

  3. Kubernetes-基于EFK进行统一的日志管理

    1.统一日志管理的整体方案 通过应用和系统日志可以了解Kubernetes集群内所发生的事情,对于调试问题和监视集群活动来说日志非常有用.对于大部分的应用来说,都会具有某种日志机制.因此,大多数容器引 ...

  4. 日志和告警数据挖掘经验谈——利用日志相似度进行聚类,利用时间进行关联分析...

    摘自:http://www.36dsj.com/archives/75208 最近参与了了一个日志和告警的数据挖掘项目,里面用到的一些思路在这里和大家做一个分享. 项目的需求是收集的客户系统一个月30 ...

  5. SQL Server 为什么事务日志自动增长会降低你的性能

    原文地址:点击打开链接 在这篇文章里,我想详细谈下为什么你要避免事务日志(Transaction Log)上的自动增长操作(Auto Growth operations).很多运行的数据库服务器,对于 ...

  6. SQL Server中事务日志自动增长对性能的影响

    SQL Server中事务日志自动增长对性能的影响 SQL Server中事务日志自动增长对性能的影响(上) SQL Server中事务日志自动增长对性能的影响(下) posted on 2011-0 ...

  7. 日志和告警数据挖掘经验谈

    最近参与了了一个日志和告警的数据挖掘项目,里面用到的一些思路在这里和大家做一个分享. 项目的需求是收集的客户系统一个月300G左右的的日志和告警数据做一个整理,主要是归类(Grouping)和关联(C ...

  8. 为什么事务日志自动增长会降低你的性能

    在这篇文章里,我想详细谈下为什么你要避免事务日志(Transaction Log)上的自动增长操作(Auto Growth operations).很多运行的数据库服务器,对于事务日志,用的都是默认的 ...

  9. idea做一个日志自动生成的jar包,并用flume做生产者,采集日志数据,用kafka做消费者来消费日志数据

    前提:先将四台机器的zookeeper和kafka服务开启. 小任务:先准备好日志自动生成的jar包.并将其放入虚拟机master01中. 1.新建一个maven项目,命名为logmaker. pom ...

最新文章

  1. JS - Promise使用随笔
  2. iOS9 HTTP 不能正常使用的解决办法
  3. php html标签闭合,php截取字符串,完美html自动闭合
  4. Hadoop 安装目录及配置
  5. 计算机知识问答一站到底,一站到底的答题规则是什么
  6. 如何开发python sdk调用数据_Python SDK调用示例
  7. Mozilla 将推出全新的安卓移动浏览器 Fenix
  8. vb红绿灯交通灯小程序
  9. 我数学不好,适合做程序员吗?
  10. Matpower疑惑解答
  11. English improvement of IT Test(2016)
  12. 判断是否微信打开实现跳转
  13. SSM上传用户头像。解决HTTP 400,保存到本地以及数据库保存路径,在页面显示的问题
  14. MT 101 Request for Transfer转账请求
  15. [汇编]四字,双字,字,字节以及四进制和32进制
  16. java实现word、pdf、excel文件下载功能
  17. 高斯原型网络原论文高质量翻译
  18. golang for嵌套循环中break 的注意事项和使用细节: break 语句出现在多层嵌套的语句块中时,可以通过标签指明要终止的是哪一层语句块
  19. 配置JAVA 环境变量
  20. Android培训武汉,武汉安卓培训之Android如何使用样式创建半透明窗体

热门文章

  1. 电脑搜索不到部分wifi,搜索不到部分2.4G频率的wif,手机开热点电脑搜不到wifi。
  2. 【淘宝SEO技巧】淘宝宝贝标题关键字优化
  3. 蓝牙相关学习:4.2.BLE空口包结构 - PDU
  4. 万能的wifi空口Tcp抓包方式
  5. 音视频基础+ffmpeg原理(视频基础知识)
  6. python中 xlrd/xlwt模块详解
  7. 微信群打卡小程序_用微信小程序“小打卡”,打造免费的阅读平台!
  8. IDEA怎么查看还有多久到期
  9. nl-mean程序下载_将MEAN应用程序部署到Amazon EC2(第1部分)
  10. office english text 2