python3中使用logging模块写日志,中文乱码,如何解决?

查看:595
本文介绍了python3中使用logging模块写日志,中文乱码,如何解决?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

python3中使用logging模块写日志,中文乱码,如何解决?

解决方案

创建filehandler的时候指定编码为utf-8,可以参考handler的构造方法:
https://docs.python.org/3.6/l...

如果是使用配置文件,也可以在配置文件的handler参数中指定编码:
[loggers]
keys=root,main

[logger_root]
level=DEBUG
handlers=consoleHandler

[logger_main]
level=DEBUG
handlers=fileHandler
qualname=main

[handlers]
keys=consoleHandler,fileHandler

[handler_consoleHandler]
class=StreamHandler
level=DEBUG
formatter=fmt
args=(sys.stdout,)

[handler_fileHandler]
class=logging.handlers.RotatingFileHandler
level=DEBUG
formatter=fmt
args=('logs/debug.log','a',1048576,5,'utf-8')

[formatters]
keys=fmt

[formatter_fmt]
format=%(asctime)s - %(name)s - %(levelname)s - %(message)s
datefmt=

以上是我搜索不到答案,参考官方文档实验出来的,所以详细写出来,供大家参考。

这篇关于python3中使用logging模块写日志,中文乱码,如何解决?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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