简介
配置Frostmourne 接入Elasticsearch源进行日志匹配告警,并静默规则,告警消息发送到企业微信,告警信息使用Markdown。
部署安装教程查看: https://songxwn.com/frostmourne_install
ELK 安装教程:https://songxwn.com/elk/
ELK集群:https://songxwn.com/elk_cluster/
添加ES 数据源
数据管理 > 数据源 > 新增
-
类型选择 ES
-
名称任意填写
-
服务地址需要写ES地址+端口号,支持写多个ES地址方便集群接入,以逗号隔离。如 192.168.0.1:9200,192.168.0.2:9200
-
版本选择你的ES对应版本。
-
HTTPS、认证用户、密码。根据自己清空填写。
添加数据名 (索引集合)
用于匹配多个索引,选择数据管理 > 数据名 > 新增
-
类型选择ES
-
名称按需填写
-
数据源选择上一步添加的
-
说明填写有意义的名字,用于下一步操作。
-
时间字段写 @timestamp
-
索引前缀填写你要匹配的索引组
-
时间后缀写YYYY.MM
-
显示字段按需填写就行,syslog 一般写message 、host.hostname 、log.syslog.severity.name 即可。
PS:配置对应我的教程 https://songxwn.com/elk/
数据查询-验证生效
选择上面创建的数据名,查询到对应日志即确认配置无问题。
添加监控
选择监控管理 > 监控列表 > 添加报警
基础信息
-
填写监控名字
-
团队可以选择默认的
-
描述写监控的描述
数据配置
-
数据选择上面创建的数据名
-
聚合类型选择count即可
-
查询语句 message: “bfd”,匹配message字段中的bfd字段进行告警。
可参考: https://github.com/AutohomeCorp/frostmourne/blob/master/doc/wiki/es.md
报警规则
-
判断类型选择数值比较
-
判断规则选择最近2分钟
-
指标数值选择大于等于 1.00
-
报警跳转选择连续一次满足
消息模板
- 消息类型选择 markdown
模板为一下,适用于企业微信机器人。
# 告警名称:${ALARM_NAME}
# ${ALERT_SILENCE}分钟内重复报警将不发送
> ## 日志信息:${message}
> ## 主机IP:${host.ip}
> ## 主机名:${host.hostname}
> ## 告警时间:${endTime}
最后点击预览数据
报警发送 - 企业微信机器人
-
报警方式选择企业微信
-
微信机器人填写你的机器人链接
-
静默条件选填,我这里是3分钟,判断消息和主机名相同则静默 $.message && $.host.hostname
-
报警接收人因为是webhook 随便填写即可。
企业微信机器人创建 :https://hiflow.tencent.com/docs/applications/wwx-robot/
调度配置 - 查询批量
- 用于填写监控的执行间隔时间,一般一分钟即可。
最后点击保存,监控生效。
点击执行一次可立即执行,查看日志是否匹配成功。
更多可参考官方文档: https://github.com/AutohomeCorp/frostmourne/tree/master