ELK 7.x — elastalert 企业微信告警
Elastalert_Wechat_Plugin
基于ElastAlert的微信企业号报警插件
- elastalert: https://github.com/Yelp/elastalert
- elastalert_wechat_plugin: https://github.com/Hello-Linux/elastalert_wechat_plugin
安装elastalert
具体安装方法可以参考官方文档:https://elastalert.readthedocs.io/en/latest/running_elastalert.html
(1) 克隆代码
git clone https://github.com/Yelp/elastalert.git
(2) 使用Python的pip管理工具安装依赖包
pip install -r requirements.txt
pip install -r requirements-dev.txt
(3) 执行安装
python setup.py install
修改配置文件
打开config/config.yaml
,按照里面的说明进行配置
其中官方es_rules
中放置的是一个wechat规则模板,可以简单修改一下继续使用
安装elastalert_wechat_plugin
将elastalert_wechat_plugin
目录下的所有文件拷贝到elastalert目录下即可
git clone https://github.com/Hello-Linux/elastalert_wechat_plugin.git
创建Elasticsearch索引
进入项目目录./elastalert/elastalert/
执行
python create_index.py --config ../config/config.yaml --host es_host --port ex_post --username es_username --password es_password --no-ssl --no-verify-certs
这个命令会在ElasticSearch创建索引,便于ElastAlert将有关其查询及其警报的信息和元数据保存回Elasticsearch。这不是必须的步骤,但是强烈建议创建。因为对于审计、测试很有用,并且重启elastalert不影响计数和发送alert。默认情况下,创建的索引叫elastalert_status
启动
python -m elastalert.elastalert --verbose --config config/config.yaml --rule rules/wechart.yaml
-config
指定配置文件路径,-rule
指定微信报警文件
相关配置文件
config.yaml
rules_folder: /data/elk/elastalert/rules
run_every:
minutes: 1
buffer_time:
minutes: 15
es_host: appblog-elasticsearch
es_port: 9200
#es_url_prefix: elasticsearch
use_ssl: False
verify_certs: False
#es_send_get_body_as: GET
es_username: elastic
es_password: elastic
#verify_certs: True
#ca_certs: /path/to/cacert.pem
#client_cert: /path/to/client_cert.pem
#client_key: /path/to/client_key.key
writeback_index: elastalert_status
alert_time_limit:
days: 2
wechat.yaml
# Alert test
es_host: appblog-elasticsearch
es_port: 9200
es_username: elastic
es_password: elastic
use_ssl: False
name: wechat_alert
type: frequency
index: log*
num_events: 1
timeframe:
minutes: 5
realert:
minutes: 5
exponential_realert:
hours: 1
filter:
- term:
level.keyword: "error"
alert:
- "elastalert_modules.wechat_qiye_alert.WeChatAlerter"
alert_text_args:
- name
- num_hits
- message
corp_id: "wwf66d9b7ea0f9bdc6"
secret: "1STRPTXAp5VMkKETTECokf_4E1ZqbiFhWotoIJfjZUU"
agent_id: 1000002
party_id: "1"
user_id: "@all"
tag_id: ""
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/25/elk-7-elastalert-enterprise-wechat-alert/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论