logrotate按指定大小切割日志时未拆分大文件的问题求助
logrotate按指定大小切割日志时未拆分大文件的问题求助
各位好,我碰到了一个logrotate的棘手问题,想请教下大家的解决方案:
我设置的是日志文件达到1KB时就触发logrotate切割。现在有个场景是,在运行logrotate之前,目标日志something.log已经是4KB了,我原本预期logrotate会把它拆分成4个1KB的日志文件,最终的文件结构应该是这样:
- something.log(0KB,被清空)
- something.log.1(1KB)
- something.log.2(1KB)
- something.log.3(1KB)
- something.log.4(1KB)
可实际运行后,结果却不是我想要的:
- something.log(0KB,被清空)
- something.log.1(4KB,完整保留了原文件的大小)
明明我在配置里写了size 1k,但它并没有把已有的大日志拆分成多个指定大小的文件。因为读取日志的程序没办法处理超过一定大小的文件,所以我必须通过logrotate把单日志文件的大小严格控制住。
我当前使用的logrotate配置文件内容如下:
/pathme/something/data/*/logs/*.log { su username1 username1 missingok rotate 10 notifempty size 1k copytruncate }
有没有朋友知道该怎么调整配置,才能让logrotate把已存在的大日志文件拆分成多个指定大小的小文件呢?
备注:内容来源于stack exchange,提问作者userskin
相关产品推荐
相关产品推荐

