**
**
Traceback (most recent call last): File “C:\Python27\lib\logging\handlers.py”, line 77, in emit self.doRollover() File “C:\Python27\lib\logging\handlers.py”, line 350, in doRollover os.rename(self.baseFilename, dfn) WindowsError: [Error 32]
原因,flask debug模式启动的两个进程,一个用于监控的,由于logging是线程安全的,但并不支持多进程,所以报错。
解决办法:
启动的时候,app.run(use_reloader=False) # 防止debug启动监控个进程
即可解决logging模块
[handler_hand03] class=handlers.TimedRotatingFileHandler 报错现象!
logging 模块的日志级别
logging模块默认定义了以下几个日志等级,它允许开发人员自定义其他日志级别,但是这是不被推荐的,尤其是在开发供别人使用的库时,因为这会导致日志级别的混乱。
DEBUG 最详细的日志信息,典型应用场景是 问题诊断
INFO 信息详细程度仅次于DEBUG,通常只记录关键节点信息,用于确认一切都是按照我们预期的那样进行工作
WARNING 当某些不期望的事情发生时记录的信息(如,磁盘可用空间较低),但是此时应用程序还是正常运行的
ERROR 由于一个更严重的问题导致某些功能不能正常运行时记录的信息
FATAL/CRITICAL 整个系统即将/完全崩溃
开发应用程序或部署开发环境时,可以使用 DEBUG 或 INFO 级别的日志获取尽可能详细的日志信息来进行开发或部署调试;
应用上线或部署生产环境时,应该使用 WARNING 或 ERROR 或 CRITICAL 级别的日志来降低机器的I/O压力和提高获取错误日志信息的效率。
日志级别的指定通常都是在应用程序的配置文件中进行指定的。
logging 模块的使用方式介绍
loggers 提供应用程序代码直接使用的接口
handlers 用于将日志记录发送到指定的目的位置
filters 提供更细粒度的日志过滤功能,用于决定哪些日志记录将会被输出(其它的日志记录将会被忽略)
formatters 用于控制日志信息的最终输出格式