首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >运行pyapns和twistd时如何旋转日志文件

运行pyapns和twistd时如何旋转日志文件
EN

Server Fault用户
提问于 2014-08-19 07:22:05
回答 1查看 466关注 0票数 0

我使用pyapns (Iphone服务器),它反过来使用扭曲(twistd守护进程)。

twistd守护进程生成twistd.log文件。当twistd.log达到1MB时,它会将它们旋转到twistd.log.1、twistd.log.2等等,但它不使用log转速,所以我猜它是内置的。

问题是,这种情况将永远持续下去,旧的日志文件永远不会被删除。这最终会填满我的磁盘。

我尝试过使用log旋转或类似的方法来旋转日志,但是我需要经常运行日志旋转,因为我需要在twistd.log达到1MB之前进行旋转。这可能发生在一秒钟内,我所知道的取决于产生了多少日志。

那么,我如何在不侵入pyapns/twistd脚本的情况下进行日志旋转呢?

EN

回答 1

Server Fault用户

发布于 2014-08-19 08:37:31

实际上,没有一种方法可以通过常规的日志旋转来实现。Log转速不是守护进程,它由cron运行,通常每天运行一次。

您可以将其更改为每隔几秒钟运行一次,但如果1MB能够如此快地填满,则日志旋转无法跟上。

为什么不编写一个简单的cron作业,删除所有多余的旋转日志文件,让pyapns/twistd继续以1MB的速度旋转?例如,您可以删除比一周更早的所有文件,并使用以下简单的cron作业:

代码语言:javascript
复制
/usr/bin/find /var/log/twistd/* -mtime +7 -exec /bin/rm {} \;

您甚至可以压缩这些文件,方法如下:

代码语言:javascript
复制
/usr/bin/find /var/log/twistd/* -regex '*.log.[0-9]+' | /usr/bin/xargs -I{} /bin/gzip {}

这样,您就可以模拟日志旋转行为,而不必关闭Twistd内部日志旋转,并且不存在磁盘填充的风险。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/622355

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档