如何按文件大小拆分Python日志文件

如何按文件大小拆分Python日志文件,python,django,logging,Python,Django,Logging,我使用的是Django,并且包含了Python的默认日志库。我有以下登录配置(在settings.py中): 我正在尝试仅使用配置拆分结果日志文件。我“搜索”了一下,找到了一些解决方案,但都是基于代码的。使用Ignacio的评论以及如何使用旋转文件处理程序;它按文件大小拆分,您可以通过日志记录字典在Django中声明性地配置它。使用Ignacio的注释以及如何使用旋转文件处理程序;它按文件大小拆分,您可以通过日志记录字典在Django中声明性地配置它。您可以在配置文件setting.py中使用L

我使用的是Django,并且包含了Python的默认日志库。我有以下登录配置(在settings.py中):


我正在尝试仅使用配置拆分结果日志文件。我“搜索”了一下,找到了一些解决方案,但都是基于代码的。

使用Ignacio的评论以及如何使用
旋转文件处理程序
;它按文件大小拆分,您可以通过
日志记录
字典在Django中声明性地配置它。

使用Ignacio的注释以及如何使用
旋转文件处理程序
;它按文件大小拆分,您可以通过
日志记录
字典在Django中声明性地配置它。

您可以在配置文件setting.py中使用LOGGING.handlers.RotatingFileHandler,以处理程序“file django”为例,假设在其大小超过100MB时将其拆分为一个新文件:

'file-django': {
    'level': 'DEBUG',
    'class': 'logging.handlers.RotatingFileHandler',
    'filename':  os.path.join(PROJECT_LOGS, 'django.log'),
    'maxBytes': 104857600, # 1024*1024*100B (100MB)
    'backupCount': 10, # keep at most 10 log files
    'formatter': 'simple'
},

参考:

您可以在配置文件setting.py中使用logging.handlers.RotatingFileHandler,以处理程序“file django”为例,假设在其大小超过100MB时将其拆分为一个新文件:

'file-django': {
    'level': 'DEBUG',
    'class': 'logging.handlers.RotatingFileHandler',
    'filename':  os.path.join(PROJECT_LOGS, 'django.log'),
    'maxBytes': 104857600, # 1024*1024*100B (100MB)
    'backupCount': 10, # keep at most 10 log files
    'formatter': 'simple'
},

参考资料:

使用旋转文件处理程序有什么问题?我正在寻找一个可以使用配置的解决方案。为什么您不能配置它?您的请求不清楚,您是否正在寻找某种工具来解析日志?为何您正在寻找日志查看器吗?我正在寻找“如何配置python日志以登录到文件,如果文件大小等于100MB,则将其拆分为另一个文件”。使用
旋转文件处理程序有什么问题?我正在寻找一个可以使用配置的解决方案。为什么您不能配置它?您的请求不清楚,您是否正在寻找某种工具来解析日志?为何您正在寻找日志查看器吗?我正在寻找“如何配置python日志以登录到文件中,以及如果文件大小(例如)等于100MB,则将其拆分为另一个文件”。