python中logging模块详解_python中logging模块的使用详解

1 logging模块简介

logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文件回滚等;相比print,具备如下优点:

1.可以通过设置不同的日志等级,在release版本中只输出重要信息,而不必显示大量的调试信息;

2.print将所有信息都输出到标准输出中,严重影响开发者从标准输出中查看其它数据;logging则可以由开发者决定将信息输出到什么地方,以及怎么输

3.出问题的时候可以通过日志来记录和回溯执行过程以及数据和定位问题

1.创建自己的日志收集器

import logging

from logging import handlers

logger = logging.getLogger("mypython")

2.设置日志级别

日志级别有如下几种:

CRITICAL, FATAL,ERROR, WARNING,WARNING, INFO,DEBUG, NOTSET,

logger.setLevel(logging.DEBUG)

3.设置日志输出格式,Formatter函数可根据个人需要添加想要的字段

""" %(asctime)s %(name)s %(levelno)s %(levelname)s %(filename)s %(message)s"""

fmt = "%(asctime)s %(name)s %(levelno)s %(levelname)s %(filename)s %(message)s"

formatter = logging.Formatter(fmt)

4.创建一个日志输出渠道,方式有两种

方法一:控制台输出

handle1 = logging.StreamHandler()

handle1.setFormatter(formatter)

handle1.setLevel(logging.INFO)

#定制输出渠道自己的日志级别,但不能低于日志收集器的级别,比如 日志收集器的级别是ERROR,此时渠道自己的的INFO级别日志就没意义

方法二:输出到文件

handle2 = logging.FileHandler("logging.log", encoding="utf-8")

handle2.setFormatter(formatter)

5.将输出渠道添加到日志收集器中

logger.addHandler(handle1)

logger.addHandler(handle2)

logger.info("11111")

来源:51CTO

作者:马尾和披肩

链接:https://blog.51cto.com/10808695/2543917

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值