对docker容器产生的日志做轮转

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对docker容器产生的日志做轮转相关的知识,希望对你有一定的参考价值。

参考技术A logrotate是Linux系统的日志轮转程序,能够对系统产生的日志自动管理
logrotate配置文件在/etc/logrotate.d下,创建对docker容器日志轮转的配置文件

第一行添加要轮转的日志的位置
daily 表示按天轮转 还有 hourly, weekly,monthly ,yearly
weekly 指定转储周期为每周
monthly 指定转储周期为每月
rotate 转储次数,超过将会删除最老的那一个
copytruncate 这个参数如果不添加的话,logrotate程序会将日志
missingok 忽略错误,如“日志文件无法找到”的错误提示
dateext 切换后的日志文件会附加上一个短横线和YYYYMMDD格式的日期
compress 通过gzip 压缩转储旧的日志
delaycompress 当前转储的日志文件到下一次转储时才压缩
notifempty 如果日志文件为空,不执行切割
sharedscripts 只为整个日志组运行一次的脚本
prerotate/endscript 在转储以前需要执行的命令可以放入这个对,这两个关键字必须单独成行
postrotate/endscript 在转储以后需要执行的命令可以放入这个对,这两个关键字必须单独成行
size  size当日志文件到达指定的大小时才转储,Size 可以指定 bytes (缺省)以及KB (sizek)或者MB (sizem).

对zabbix-agent日志进行配置,创建zabbix-agent文件即可

logrotate可以在任何时候从命令行手动调用

以上是关于对docker容器产生的日志做轮转的主要内容,如果未能解决你的问题,请参考以下文章

将日志输出到Docker容器外

将日志输出到Docker容器外

利用ELK搭建Docker容器化应用日志中心

利用 ELK 搭建 Docker 容器化应用日志中心

Docker容器日志管理介绍

Docker系列:Docker存储管理