RSYSLOG 参数配置错误导致磁盘爆满

简介:

问题:

   在将应用程序日志通过rsyslog服务推送到远程日志服务器上时,在几小时之后发现磁盘大量消耗,并发现/var/log/messages 文件超过10G。会什么会这样呢?


配置如下:


164a0bc9d7be6342dbf0731b3fa65f4f1eedccbf

注意最后两行的发送规则:

programname == '${APP_NAME}' then @@XXX:PORT;logline_${APP_NAME}

if \$programname == '${APP_NAME}' then stop


实验发现if \$programname == '${APP_NAME}' then stop 他会不停的将access_log.log文件内容写入到/var/log/messages(centos),导致系统日志文件不停增长。


解决办法:

将最后一条规则修改:

将if \$programname == '${APP_NAME}' then stop

修改为:

if \$programname == '${APP_NAME}' then ~  (注意“~”中文字符)


在rsyslog中"~" 表示将匹配到的项目字符丢弃,不会被再次记录到系统日志文件中。


配置修改后需重启rsyslog服务。

目录
相关文章
|
4月前
|
Linux Shell Perl
Linux脚本实现文件系统使用率大于90%报警
Linux脚本实现文件系统使用率大于90%报警
44 0
|
1月前
|
Ubuntu Linux
linux启动与关闭日志
Linux系统中的日志文件分布在多个位置,如`/var/log/syslog`或`/var/log/messages`(含系统事件)、`/var/log/boot.log`(启动详情,非所有发行版都有)、`/var/log/dmesg`(内核启动消息)、`/var/log/auth.log`(身份验证记录)和`/var/log/lastlog`(用户登录信息)。对于使用systemd的发行版,可利用`journalctl`命令进行日志查询。查看日志文件可借助文本编辑器或命令行工具如`tail`和`grep`。访问日志文件可能需要权限,可能需使用`sudo`或root用户。
39 0
11.2 磁盘配额启动前的准备工作
前面我们已经谈到,使用磁盘配额的前提,是必须要内核以及文件系统支持才行,这里假设大家使用的就是支持磁盘配额的内核,那么接下来就是要配置文件系统,使其支持配额限制。
101 0
11.2 磁盘配额启动前的准备工作
|
Kubernetes 容器
DataStreams+logstash+ILM进行日志定时删除,节省硬盘资源
目前所有的K8S上的容器日志都被收集到了我们的ELK上,随着时间的推移,ELK上的日志所占的存储空间越来越多,我们需要一个定时清理的策略,以节约硬盘资源。 我们主要配置以下ELK里的这几个地方 1.通过kibana新增一个lifecycle policies 2.通过kibana新增一个index template,注意配置DataStreams 3.logstash 的logstashPipeline 4.filebeat的filebeat.yml文件
797 0
DataStreams+logstash+ILM进行日志定时删除,节省硬盘资源
|
Web App开发 消息中间件 监控
日志量巨大时filebeat占用文件句柄导致磁盘被打满
生产环境日志收集集群的一次优化经历
6399 0
|
关系型数据库 MySQL Linux
linux环境下 xampp mysql 启动失败问题排查 日志文件过大占用存储空间导致网站瘫痪
问题现象 网站莫名其妙的连接不上mysql了,导致网站瘫痪;没有改任何程序,怎么回事呢?马上用xshell 和xftp工具连接linux服务器来排查问题 启动xampp mysql /opt/lampp/lampp startmysql 启动xampp mysql ![/opt/lampp/bin/mysql.
2840 0
|
监控 关系型数据库 数据库
PostgreSQL 10.1 手册_部分 III. 服务器管理_第 29 章 监控磁盘使用_29.2. 磁盘满失败
29.2. 磁盘满失败 一个数据库管理员最重要的磁盘监控任务就是确保磁盘不会写满。一个写满了的数据磁盘可能不会导致数据的崩溃,但它肯定会让系统变得不可用。如果保存 WAL 文件的磁盘变满,会发生数据库服务器致命错误并且可能发生关闭。
1321 0