赞
踩
欢迎关注。
要弄一套日志监控管理系统,市面上比较火的就是Elastic公司的ELK框架,即Elasticsearch、Logstash和Kibana,日志监控用的是Elastalert,:
Elastalert是一个简单的框架,用于从Elasticsearch中的数据中发现异常或者其他模式的特征,然后可以进行报警。他将Elasticsearch与规则类型和警报这两个组件联合起来使用。定期查询Elasticsearch,并且将数据传递给规则类型,当找到规则所对应的匹配项时,发出报警。
源码安装 ,Elastalert的安装部署需要Python环境,请先提前安装,建议安装Python-3.6.9版本。从github下载Elastalert源码_ 所以 今天讲,最简单的方法实现最复杂的问题
docker部署 日志报警
最终效果:
2. 测试一下钉钉
curl -H "Content-Type: application/json" \
-d '{"msgtype":"text","text":{"content":"EFK alert test"}}' \
https://oapi.dingtalk.com/robot/send?access_token=7f10310db8be10da66319f18dfe505717ddae33cfd0eb19bde3f90c24fdae876
// vim /opt/config.yaml
rules_folder: /opt/elastalert/rules #指定告警规则文件目录
run_every:
seconds: 10 #查询Elasticsearch的时间间隔
buffer_time:
minutes: 3
es_host: 192.168.10.58 #elasticsearch IP
es_port: 9200 #elasticsearch端口
writeback_index: elastalert_status
writeback_alias: elastalert_alerts
alert_time_limit:
days: 2 #失败重试次数
mkdir /opt/rules vim /opt/rules/alter.yaml ······ ....... ········· alert_text_type: alert_text_only alert_subject: "监控告警" #配置告警标题 #配置告警内容 alert_text: " 您有一条告警信息❌: \n 时间:{0}\n 级别:高\n 服务名称: {1}\n 出现关键字:ERROR、Exception \n 出现次数:{2}\n 请及时登录Kibana查看\n 地址: http://192.168.10.58:5601/ \n主要信息如下:\n\n{3} \n " #指定可用字段(对应的 kibala 日志里面) alert_text_args: - "@timestamp" #0 - host.name #1 - num_hits #2 - MESSAGE #3
docker pull 857676355/efkalarm
docker run -d --name EFKalert \
--restart=always \
-v /opt/config.yaml:/opt/elastalert/config.yaml \
-v /opt/rules:/opt/elastalert/rules 857676355/efkalarm
[root@k8s ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS NAMES
f18b22796f91 857676355/efkalarm "/opt/elastalert/run…" 11 seconds ago up (1)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。