Python日志模块-logging

python中,我们不需要第三方的日志组件,因为它已经为我们提供了简单易用、且功能强大的日志模块:logging。logging模块支持将日志信息保存到不同的目标域中,如:保存到日志文件中;以邮件的形式发送日志信息;以http get或post的方式提交日志到web服务器;以windows事件的形式记录等等。这些日志保存方式可以组合使用,每种方式可以设置自己的日志级别以及日志格式

主要组件

logger日志类,应用程序往往通过调用它提供的api来记录日志
handler对日志信息处理,可以将日志发送(保存)到不同的目标域中
filter对日志信息进行过滤
formatter日志的格式化

日志级别

级别相应数值表示法
CRITICAL50
ERROR40
WARNING30
INFO20
DEBUG10
NOTEST0

格式化

%(name)sLogger的名字
%(levelno)s数字形式的日志级别
%(levelname)s文本形式的日志级别
%(pathname)s调用日志输出函数的模块的完整路径名,可能没有
%(filename)s调用日志输出函数的模块的文件名
%(module)s调用日志输出函数的模块名
%(funcName)s调用日志输出函数的函数名
%(lineno)d调用日志输出函数的语句所在的代码行
%(created)f当前时间,用UNIX标准的表示时间的浮点数表示
%(relativeCreated)d输出日志信息时的,自Logger创建以来的毫秒数
%(asctime)s字符串形式的当前时间。默认格式是“2003-07-08 16:49:45,896”。逗号后面的是毫秒
%(thread)d线程ID。可能没有
%(threadName)s线程名。可能没有
%(process)d进程ID。可能没有
%(message)s用户输出的消息

可以编写示例代码来输入一个log.txt的文件

1
2
3
4
import logging
  
logging.basicConfig(filename = 'log.txt', filemode='w', level=logging.DEBUG, format = '%(process)d %(message)s')
logging.debug('debug message')

上面是一种比较简单的配置,还有一种比较灵活的配置如下

1
2
3
4
5
6
7
LOG = logging.getLogger('Fk')
File = logging.FileHandle('log.txt')
format = logging.Formatter('%(process)d %(message)s')
File.setFormatter(format)
LOG.addHandler(File)
LOG.setLevel(logging.DEBUG)
LOG.debug('debug message')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值