当前位置: 首页 > news >正文

Centos7 message日志因dockerd、kubelet、warpdrive、containerd等应用迅速增长

问题:公司服务器在部署一套业务后,message日志记录大量的dockerd、kubelet、warpdrive、containerd应用日志,每天增加2G大小的日志

解决方案:

前期吐槽下:发现某个帖子,需要会员或者花钱才能看,看了之后直接无语了人家给的方案
在/etc/rsyslog.conf中某个地方改为*.none /var/log/messages

 我的看法:大哥,这是公司服务器,你啥都不记录,最起码你得保证系统日志得有吧,以后服务器出问题了怎么办,你怎么排查?查鸡毛啊,出现错误后因为你这配置没找到错误出现的原因,你不顶锅谁顶锅。

来自花钱看了没用的文档,从而导致心里不平衡弱小无辜的人的吐槽

###########################################华丽的分割线#####################################################

吐槽完了,说正事,其实有两套解决方案
第一套:类似于上面的,就是不接收docker
、kubelet、warpdrive、containerd应用日志(提前你得和应用相关得人员确认好,我系统message不接收这些日志,你们应用出错误后有没有别的日志能供你排查)应用确认无所谓,这些对我没用,那么配置开始

1. 在/etc/rsyslog.d/下新增配置文件(注意是新增,内容如下)

[root@localhost]# vim /etc/rsyslog.d/ignore-docker.conf#内容如下:
if $programname == 'dockerd' then {stop
}

2. 重启日志服务

保存后,重启 rsyslog

systemctl restart rsyslog

3. 测试查看

tail -f /var/log/messages

解释:
if $programname == 'dockerd': 这是一个条件语句。$programname 是一个 rsyslog 的内置变量,它代表日志条目的程序名称。== 'dockerd' 表示条件是检查程序名称是否等于 'dockerd'。dockerd 是 Docker 的守护进程的程序名。

then { ... }: 这是条件满足时执行的代码块的开始部分。花括号 { ... } 包围了条件满足时的所有指令。
stop: 这是在 rsyslog 配置中的一个指令,表示停止对匹配日志的进一步处理。
也就是说,一旦日志的程序名是 'dockerd',这个日志条目就不会被进一步处理或记录到其他日志文件中。

其他应用只需要把dockerd变成应用名就可以

第二套:那么我们把docker、kubelet、warpdrive、containerd应用日志记录到别的日志中,从而和系统日志分开,因为docker、kubelet、warpdrive、containerd应用日志增长量大,和应用人员商量留七天够不够,够就写个周期性计划任务,每七天删除一次应用日志

1. 在/etc/rsyslog.d/下新增配置文件(注意是新增,内容如下)

[root@localhost]# vim /etc/rsyslog.d/ignore-docker.conf#内容如下:
if $programname == 'dockerd' then /var/log/docker.log
& stop

2. 重启日志服务

保存后,重启 rsyslog

systemctl restart rsyslog

3. 测试查看

tail -f /var/log/messages

if $programname == 'dockerd':这是匹配 dockerd 程序的日志。


/var/log/docker.log:指定将匹配的日志写入到这个文件。


& stop:指示 rsyslog 停止进一步处理这些日志,这样它们不会被记录到其他日志文件(如 messages)中

周期性计划任务就不过多写了,写道这里就可以让message日志和应用日志拆开了 

祝大家别碰到那种花了钱还没用的帖子!!!!!!!!!!!!!

上面来自我的吐槽,看我帖子没用的话也别喷,最起码我没收费


http://www.mrgr.cn/news/6851.html

相关文章:

  • 深入探索Objective-C的NSOrthography:拼写检查的艺术与科学
  • 2024-07-12 - 基于 sealos 部署高可用 K8S 管理系统
  • PPTP、L2TP、IPSec、IPS 有什么区别?
  • 从理论到实践网络编程模型:(BIO、NIO、AIO)同步与异步模型的原理与应用 (六)
  • 存在重复元素 III
  • 微分方程模型|凶案时间推断|欧拉法|Vanderpol方程
  • Python习题 141:打印4前边的偶数
  • 前端构建工具 webpack与vite对比
  • 2025秋招书籍推荐:《深度学习的数学理论》——揭示深度学习背后的数学逻辑
  • 构建我的标签体系(进行中)
  • React+Vis.js(07):vis.js设置关系网络图禁止缩放和设置关系的指向和名称
  • 超融合/分布式 IT 架构有哪些常见故障类型?如何针对性解决和预防?
  • springcloud alibaba 微服务web服务器tomcat改为undertow
  • RK3588 技术分享 | 在Android系统中使用NPU实现Yolov5分类检测-迅为电子
  • mysql group by报错 with sql_mode=only_full_group_by
  • 介绍 TensorFlow 的基本概念和使用场景。
  • ARM32开发——PWM高级定时器
  • Maven-04.idea集成-导入maven项目
  • 智能电子班牌源码之终端管理-SAAS本地化及未来之窗行业应用跨平台架构
  • 消息过期时间设置:队列属性与消息TTL