python3 日志重复打印logger
在python2中正常的日志,单只直接使用python3,发现日志重复了,其实是handlers多添加的原因,
python2代码
-----------------------------------------------------------------------------------------------------------------------------------------------------------
def my_log(msg):
if logging.getLogger('log.log'):
return logging.getLogger('log.log')
logger = logging.getLogger('log.log')
ch = logging.StreamHandler()
ch.setLevel(logging.ERROR)
fmt = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
ch.setFormatter(fmt)
logger.addHandler(ch) logger.error(msg)
-----------------------------------------------------------------------------------------------------------------------------------------------------------
适当修改一下:
python3代码:
-----------------------------------------------------------------------------------------------------------------------------------------------------------
def my_log(msg):
if logging.getLogger('log.log'):
return logging.getLogger('log.log')
logger = logging.getLogger('log.log')
if not logger.handlers:
ch = logging.StreamHandler()
ch.setLevel(logging.ERROR)
fmt = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
ch.setFormatter(fmt)
logger.addHandler(ch) logger.error(msg)
-----------------------------------------------------------------------------------------------------------------------------------------------------------
加一个重复判断就行
最新文章
- android eclipse 导入idea项目
- Nginx/Apache服务连接数梳理
- Java数据结构——二叉树
- J2EE开发实战基础系列一 HelloWorld【转】
- openstack kilo manual arch 优化
- 第二次作业----自学c++的选择与计划
- 5.6 在线DDL (online DDL)详解
- Websocket协议之握手连接
- html5 手机APP计算高度问题
- iOS中Block介绍 基础
- OpenRisc-32-ORPSoC烧写外部spi flash
- 跳转表C语言,不比redis版本号
- avalon组件
- Junit4学习(三)Junit运行流程
- AngularJS指南文档
- Linux下安装Python3.6
- 在views中引用UserProfile报错RuntimeError: Model class apps.users.models.UserProfile doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.
- android PopupWindow 显示问题
- Internet spirit
- Mac下安装ipython与jupyter