没有合适的资源?快使用搜索试试~ 我知道了~
首页详解Python中logging日志模块在多进程环境下的使用
详解Python中logging日志模块在多进程环境下的使用
2.2k 浏览量
更新于2023-05-26
评论 2
收藏 55KB PDF 举报
许多应用程序中都会有日志模块,用于记录系统在运行过程中的一些关键信息,以便于对系统的运行状况进行跟踪。这篇文章给大家主要介绍了在Python中logging日志模块在多进程环境下的使用,需要的朋友可以参考借鉴,下面来一起看看吧。
资源详情
资源评论
资源推荐

详解详解Python中中logging日志模块在多进程环境下的使用日志模块在多进程环境下的使用
许多应用程序中都会有日志模块,用于记录系统在运行过程中的一些关键信息,以便于对系统的运行状况进行
跟踪。这篇文章给大家主要介绍了在Python中logging日志模块在多进程环境下的使用,需要的朋友可以参考借
鉴,下面来一起看看吧。
前言前言
相信每位程序员应该都知道,在使用 Python 来写后台任务时,时常需要使用输出日志来记录程序运行的状态,并在发生错误
时将错误的详细信息保存下来,以别调试和分析。Python 的 logging 模块就是这种情况下的好帮手。
logging 模块可以指定日志的级别,DEBUG、INFO、WARNING、ERROR、CRITICAL,例如可以在开发和调试时,把
DEBUG 以上级别的日志都输出,而在生产环境下,只输出 INFO 级别。(如果不特别指定,默认级别是 warning)
logging 还可以指定输出到命令行或者文件,还可以按时间或大小分割日志文件。
关于 logging 的详细使用,这里就不再细说,可以参考官方文档,或者这里的介绍。
logging 的配置的配置
通常情况下,我们需要将日志保存到文件中,并期望能自动分割文件,避免日志文件太大。下面给出了一个 logging 的配置例
子。
import logging.config
logging.config.dictConfig({
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'verbose': {
'format': "[%(asctime)s] %(levelname)s [%(name)s:%(lineno)s] %(message)s",
'datefmt': "%Y-%m-%d %H:%M:%S"
},
'simple': {
'format': '%(levelname)s %(message)s'
},
},
'handlers': {
'null': {
'level': 'DEBUG',
'class': 'logging.NullHandler',
},
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'verbose'
},
'file': {
'level': 'DEBUG',
'class': 'logging.RotatingFileHandler',
# 当达到10MB时分割日志
'maxBytes': 1024 * 1024 * 10,
# 最多保留50份文件
'backupCount': 50,
# If delay is true,
# then file opening is deferred until the first call to emit().
'delay': True,
'filename': 'logs/mysite.log',
'formatter': 'verbose'
}
},
'loggers': {
'': {
'handlers': ['file'],
'level': 'info',
},
}
})
我们在一个模块内,就可以这么使用来记录日志
import logging
logger = logging.getLogger(__name__)
if __name__ == '__main__':
logger.info('log info')



















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0