logstash根据日志关键词报警
logstash是可以根据日志级别,日志类型进行报警通知的。
这次精简教程,排除filebeat自带的#include_lines: ['^ERR', '^WARN']写法,直接使用logstash报警。
步骤一、安装logstash
方法1 去官网下载rpm包,官网地址:https://www.elastic.co/cn/downloads/logstash
方法2 yum install logstash -y
方法3 使用国内一些软件源下载rpm包,速度更快一点。有可能安装包报错。比如:https://www.newbe.pro/Mirrors/Mirrors-Logstash/
步骤二、安装exec插件,用于报警
执行如下命令安装插件
/usr/share/logstash/bin/logstash-plugin install logstash-output-exec

步骤三、编写配置文件
cd /etc/logstash/conf.d
vim logstash.conf
input {
file {
path => "/home/wwwroot/hxt_reconciliation/storage/logs/laravel-2020-07-01.log"
}
}
output {
if 'ERROR' in [message] or 'local.WARNING' in [message] {
exec {
command => "/bin/bash /etc/logstash/conf.d/dingding.sh %{message}"
}
}
}
input选择文件,output发送钉钉通知。
注意:
0 0 * * * /bin/bash /root/tools/replace_logstash.sh
#!/bin/bash
today=`date +%Y-%m-%d`
lastday=`date -d 'yesterday' +%Y-%m-%d`
sed -i "s/${lastday}/${today}/g" /etc/logstash/conf.d/logstash.conf
systemctl restart logstash.service
钉钉通知脚本自己随便一个吧,贴一个我随便写的
#!/bin/bash
message="我的ip地址_logstash: \n $*"
curl "https://oapi.dingtalk.com/robot/send?access_token=钉钉的webhook地址" \
-H "Content-Type: application/json" \
-d '{"msgtype": "text",
"text": {
"content": "'"${message}"'"
}
}'
步骤四、启动
service logstash start
#或者,以下命令更多用于调试output输出到控制台时候使用
/usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/logstash.conf
看一下效果

logstash根据日志关键词报警的更多相关文章
- ELKStack入门篇(三)之logstash收集日志写入redis
1.部署Redis 1.1.下载redis [root@linux-node2 ~]# wget http://download.redis.io/releases/redis-4.0.6.tar.g ...
- Logstash IIS日志采集
Logstash IIS 日志采集,跟Linux上运行差不多,都需要java运行环境,装个jdk就好了,对于IIS日志暂时未处理X-forward-for,纠结怎么弄当中,貌似要装个插件,慢慢研究. ...
- ELK之filebeat替代logstash收集日志
filebeat->redis->logstash->elasticsearch 官网下载地址:https://www.elastic.co/downloads/beats/file ...
- ELK之logstash收集日志写入redis及读取redis
logstash->redis->logstash->elasticsearch 1.安装部署redis cd /usr/local/src wget http://download ...
- ELK快速入门(二)通过logstash收集日志
ELK快速入门二-通过logstash收集日志 说明 这里的环境接着上面的ELK快速入门-基本部署文章继续下面的操作. 收集多个日志文件 1)logstash配置文件编写 [root@linux-el ...
- ELK快速入门(三)logstash收集日志写入redis
ELK快速入门三-logstash收集日志写入redis 用一台服务器部署redis服务,专门用于日志缓存使用,一般用于web服务器产生大量日志的场景. 这里是使用一台专门用于部署redis ,一台专 ...
- ELK快速入门(四)filebeat替代logstash收集日志
ELK快速入门四-filebeat替代logstash收集日志 filebeat简介 Filebeat是轻量级单用途的日志收集工具,用于在没有安装java的服务器上专门收集日志,可以将日志转发到log ...
- ELK(Elasticsearch + Logstash + Kibana) 日志收集
单体应用或微服务的场景下,每个服务部署在不同的服务器上,需要对日志进行集重收集,然后统一查看所以日志. ELK日志收集流程: 1.微服务器上部署Logstash,对日志文件进行数据采集,将采集到的数据 ...
- 第五章·Logstash深入-日志收集
1.Logstash收集单个日志到文件中 file模块收集日志 不难理解,我们的日志通常都是在日志文件中存储的,所以,当我们在使用INPUT插件时,收集日志,需要使用file模块,从文件中读取日志的内 ...
随机推荐
- Python多环境管理神器(Anaconda)
为了解决python多版本共存,解决不同版本之间的依赖冲突,虚拟环境隔离等问题,我们前面介绍了venv.virtualenv.virtualenvwrapper.pyenv.pipenv等众多工具.下 ...
- PIKACHU之文件包含漏洞
PIKUCHU靶场之文件包含 一.file inclusion(local) 实验源码: <?php /** * Created by runner.han * There is nothing ...
- 【视频解码性能对比】opencv + cuvid + gpu vs. ffmpeg + cpu
视频大小:1168856 字节画面尺寸:480*848帧数:275opencv + cuvid + tesla P4, 解码性能:1426.84 fps ffmpeg 4.0 API + [Intel ...
- 程序员必备的编程助手!SmartCoder助你轻松集成HMS Core
当开发者在集成HMS Core遇到一些疑问时,需要翻阅官网文档,反复查看集成说明或者API调用说明,或者研究GitHub上的开源示例代码,花费较多的时间,在IDE环境和网页浏览器之间反复切换也会耗费很 ...
- 记一次org.springframework.transaction.UnexpectedRollbackException: Transaction rolled back because it has been marked as rollback-only异常
@Transactional(rollbackFor = Exception.class) @Overridepublic DubboResult<Boolean> productAddO ...
- linux下查看 SELinux状态及关闭SELinux
SELinux全称为安全增强式 Security-Enhanced Linux(SELinux),是一个在内核中实践的强制存取控制(MAC)安全性机制.SELinux 首先在 CentOS 4 出现, ...
- ERNIE代码解析
原创作者 |疯狂的Max ERNIE代码解读 考虑到ERNIE使用BRET作为基础模型,为了让没有基础的NLPer也能够理解代码,笔者将先为大家简略的解读BERT模型的结构,完整代码可以参见[1]. ...
- 深入学习python内存管理
深入Python的内存管理 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 语言的内存管理是语言设计的一个重要方面.它是决定语 ...
- 如何在pyqt中自定义SwitchButton
前言 网上有很多 SwitchButton 的实现方式,大部分是通过重写 paintEvent() 来实现的,感觉灵活性不是很好.所以希望实现一个可以联合使用 qss 来更换样式的 SwitchBut ...
- JAVA中获取不同系统的换行符和获取系统路径路径分割符
简介 JAVA具有多平台特征,一次开发,多平台运行,主要依据JVM,但是不同的操作系统中换行符和分割符不同,故需要根据不同的操作系统去获取不同的符号. JAVA代码 @Test public void ...