elk告警 elastalert安装 钉钉消息(一)

 

ELK日志报警插件ElastAlert

公司最近上线新的产品,使用了华为云的相关elk组件,所以相关告警插件Sentinl等不是很好安装
于是就想着使用elastalert试试,摸索阶段,仅供参考。


将Elasticsearch与两种类型的组件(规则类型和警报)结合使用。定期查询Elasticsearch,并将数据传递到规则类型,该规则类型确定何时找到匹配项。发生匹配时,将为该警报提供一个或多个警报,这些警报将根据匹配采取行动。
这是由一组规则配置的,每个规则定义一个查询,一个规则类型和一组警报。

ElastAlert包含几种具有常见监视范例的规则类型:
	匹配Y时间内至少有X个事件的地方”(frequency类型)
	当事件发生率增加或减少时匹配”(spike类型
	在Y时间内少于X个事件时进行匹配”(flatline类型
	当某个字段与黑名单/白名单匹配时匹配”(blacklist并whitelist输入)
	匹配任何与给定过滤器匹配的事件”(any类型)
	当某个字段在一段时间内具有两个不同的值时进行匹配”(change类型)
	当字段中出现从未见过的术语时进行匹配”(new_term类型)
	当字段的唯一值数量大于或小于阈值(cardinality类型)时匹配
	
告警支持邮件、钉钉、微信、自定义等多种告警方式;能灵活从es中查询出来的内容

python3.6.9安装

先查看下机器py版本,如果是2.7,则执行以下

yum -y install wget openssl openssl-devel gcc gcc-c++

wget https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tgz
tar xf Python-3.6.9.tgz

cd Python-3.6.9
./configure --prefix=/usr/local/python --with-openssl
make && make install

mv /usr/bin/python /usr/bin/python_old
ln -s /usr/local/python/bin/python3 /usr/bin/python
ln -s /usr/local/python/bin/pip3 /usr/bin/pip

pip install --upgrade pip
sed -i '1s/python/python2.7/g' /usr/bin/yum
sed -i '1s/python/python2.7/g' /usr/libexec/urlgrabber-ext-down

python -V
显示为3.6.9

elastalert安装

可以直接安装
pip install elastalert

也可以拉取源码
git clone https://github.com/Yelp/elastalert.git

cd alastalert/

python setup.py install

pip install -r requirements.txt


如有报错
elastalert 0.2.4 requires jira>=2.0.0, but you'll have jira 1.0.14 which is incompatible.
可执行
pip install jira==2.0.0

钉钉告警插件安装

由于测试curl https接口有点问题,所以安装dingding的脚本了
mkdir dingding
cd dingding
wget https://github.com/xuyaoqiang/elastalert-dingtalk-plugin/archive/master.zip
unzip master.zip
cd elastalert-dingtalk-plugin-master/
pip install pyOpenSSL==16.2.0
pip install setuptools==46.1.3

拷贝目录下的文件到elastalert目录下,参考,以你实际路径为准
cp -r elastalert_modules/ /home/elastalert/

elastalert配置,具体配置请参考一下章节

cd /home/elastalert

cp -r example_rules rules

cp config.yaml.example config.yaml

修改配置
vim config.yaml

cd rules
vim api_error.yaml

检查脚本
elastalert-test-rule rules/api_error.yaml


elastalert执行

cd /home/elastalert

python -m elastalert.elastalert --config ./config.yaml --rule ./rules/api_error.yaml
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值