按大小扭曲的日志旋转/对文件总数有上限? [英] Twisted log rotation by size / having an upper limit on the total number of files?

查看:70
本文介绍了按大小扭曲的日志旋转/对文件总数有上限?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一台扭曲的服务器,可以生成日志文件并根据大小对其进行轮换.如果特定文件的文件大小超过1MB,则会创建一个新的日志文件.

I have a twisted server that generates log files and rotates them based on size. If the file size of a particular file is more than 1MB, a new log file is created.

但是,运行几天后,日志文件开始填充我的硬盘.

However, after several days of running, the log files start filling up my hard disk.

是否有一种方法可以对日志循环进行总体限制?限制可以基于总大小(例如仅200GB的日志-将会删除更多的日志),也可以基于文件数(例如仅存储1000个日志).

Is there a way to have an overall limit on log rotation? The limit could be based on total size (like only 200GB worth of logs - anything more would be deleted), or on the number of files (like only 1000 logs would be stored).

推荐答案

您可以使用选项记录器.您将必须编写自己的记录器工厂,类似这样

You can use the option logger. You will have to write your own logger factory, something like this

#in module mymodule, file <log.py>
def my_logger():
    f = logfile.LogFile("twistd_alert.log", '/var/log/', rotateLength=1000000, maxRotatedFiles=100)
    log_observer = log.FileLogObserver(f)
    return log_observer.emit

然后在运行服务器时,可以将选项记录器指定为

Then while running the server you can specify the option logger as

twistd --logger=mymodule.log.logger <your_server>

这篇关于按大小扭曲的日志旋转/对文件总数有上限?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆