Django--logging配置
Posted 2009_boy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django--logging配置相关的知识,希望对你有一定的参考价值。
写Django项目常用的Logging配置
LOGGING = { \'version\': 1, \'disable_existing_loggers\': False, \'formatters\': { \'standard\': { \'format\': \'[%(asctime)s][%(threadName)s:%(thread)d][task_id:%(name)s][%(filename)s:%(lineno)d]\' \'[%(levelname)s][%(message)s]\' }, \'simple\': { \'format\': \'[%(levelname)s][%(asctime)s][%(filename)s:%(lineno)d]%(message)s\' }, \'collect\': { \'format\': \'%(message)s\' } }, \'filters\': { \'require_debug_true\': { \'()\': \'django.utils.log.RequireDebugTrue\', }, }, \'handlers\': { \'console\': { \'level\': \'DEBUG\', \'filters\': [\'require_debug_true\'], # 只有在Django debug为True时才在屏幕打印日志 \'class\': \'logging.StreamHandler\', \'formatter\': \'simple\' }, \'default\': { \'level\': \'INFO\', \'class\': \'logging.handlers.RotatingFileHandler\', # 保存到文件,自动切 \'filename\': os.path.join(BASE_LOG_DIR, "xxx_info.log"), # 日志文件 \'maxBytes\': 1024 * 1024 * 50, # 日志大小 50M \'backupCount\': 3, \'formatter\': \'standard\', \'encoding\': \'utf-8\', }, \'error\': { \'level\': \'ERROR\', \'class\': \'logging.handlers.RotatingFileHandler\', # 保存到文件,自动切 \'filename\': os.path.join(BASE_LOG_DIR, "xxx_err.log"), # 日志文件 \'maxBytes\': 1024 * 1024 * 50, # 日志大小 50M \'backupCount\': 5, \'formatter\': \'standard\', \'encoding\': \'utf-8\', }, \'collect\': { \'level\': \'INFO\', \'class\': \'logging.handlers.RotatingFileHandler\', # 保存到文件,自动切 \'filename\': os.path.join(BASE_LOG_DIR, "xxx_collect.log"), \'maxBytes\': 1024 * 1024 * 50, # 日志大小 50M \'backupCount\': 5, \'formatter\': \'collect\', \'encoding\': "utf-8" } }, \'loggers\': { # 默认的logger应用如下配置 \'\': { \'handlers\': [\'default\', \'console\', \'error\'], # 上线之后可以把\'console\'移除 \'level\': \'DEBUG\', \'propagate\': True, }, # 名为 \'collect\'的logger还单独处理 \'collect\': { \'handlers\': [\'console\', \'collect\'], \'level\': \'INFO\', } }, }
附:Python logger流示图
以上是关于Django--logging配置的主要内容,如果未能解决你的问题,请参考以下文章