linux - log rotate 不拆分文件并减少它

标签 linux logrotate log-rotation

我正在尝试在我的流式处理作业中实现日志轮换。这是我的测试配置文件。

/home/hadoop/first* {
    daily
    rotate 3
    size 1M
    compress
    delaycompress
}

当我尝试运行 logrotate 时,所发生的只是日志文件 first_run.out 附加了 .1 文件没有拆分,拆分文件也没有压缩。

编辑: 当我尝试使用 -v 选项时,我得到了这个日志

[hadoop@ip-10-27-90-253 ~]$ sudo logrotate -vf /etc/logrotate.d/apache2.conf
reading config file /etc/logrotate.d/apache2.conf
reading config info for /home/hadoop/first* 

Handling 1 logs

rotating pattern: /home/hadoop/first*  forced from command line (3 rotations)
empty log files are rotated, old logs are removed
considering log /home/hadoop/first_run.out.1.1.1.1.1.1
  log needs rotating
rotating log /home/hadoop/first_run.out.1.1.1.1.1.1, log->rotateCount is 3
dateext suffix '-20190411'
glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
previous log /home/hadoop/first_run.out.1.1.1.1.1.1.1 does not exist
renaming /home/hadoop/first_run.out.1.1.1.1.1.1.3.gz to /home/hadoop/first_run.out.1.1.1.1.1.1.4.gz (rotatecount 3, logstart 1, i 3), 
old log /home/hadoop/first_run.out.1.1.1.1.1.1.3.gz does not exist
renaming /home/hadoop/first_run.out.1.1.1.1.1.1.2.gz to /home/hadoop/first_run.out.1.1.1.1.1.1.3.gz (rotatecount 3, logstart 1, i 2), 
old log /home/hadoop/first_run.out.1.1.1.1.1.1.2.gz does not exist
renaming /home/hadoop/first_run.out.1.1.1.1.1.1.1.gz to /home/hadoop/first_run.out.1.1.1.1.1.1.2.gz (rotatecount 3, logstart 1, i 1), 
old log /home/hadoop/first_run.out.1.1.1.1.1.1.1.gz does not exist
renaming /home/hadoop/first_run.out.1.1.1.1.1.1.0.gz to /home/hadoop/first_run.out.1.1.1.1.1.1.1.gz (rotatecount 3, logstart 1, i 0), 
old log /home/hadoop/first_run.out.1.1.1.1.1.1.0.gz does not exist
log /home/hadoop/first_run.out.1.1.1.1.1.1.4.gz doesn't exist -- won't try to dispose of it
renaming /home/hadoop/first_run.out.1.1.1.1.1.1 to /home/hadoop/first_run.out.1.1.1.1.1.1.1

最佳答案

语法正确。

也许您的文件大小小于 1 MB?

使用-v键,可以帮你解决问题。例如:logrotate -v logrotateconfig.file


UPD:您的名称文件为 logrotate 生成递归。

first_run.out.1.1.1.1.1.1.1
first_run.out.1.1.1.1.1.1.1.1
first_run.out.1.1.1.1.1.1.1.1.1
....

需要在 logrotate 配置中更精确地指定文件名。

关于linux - log rotate 不拆分文件并减少它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55626237/

相关文章:

java - 有什么方法可以在压缩旋转日志文件之前添加延迟

python - python 中的 TimedRotatingFileHandler 的翻转没有发生

linux - 命令(wget)从存储库网站获取所有带有 rpm 扩展名的文件

linux - bash 回文 grep 循环 if then else missing '

linux - unixODBC/Postgres密码神秘登录错误

python - 将文件(使用 bash)复制为新文件并在文件中编辑变量

linux - 如何每天轮换日志,仅使用当天的数据?

ansible - 运行 ansible 剧本时出现模糊弃用错误

linux - logrotate - 压缩文件修改 x 天数

logging - 如何每天创建一个 uwsgi 日志文件?