首页 > 编程 > Python > 正文

Python日志模块logging基本用法分析

2020-02-15 22:47:51
字体:
来源:转载
供稿:网友

本文实例讲述了Python日志模块logging基本用法。分享给大家供大家参考,具体如下:

1. 基础用法

python提供了一个标准的日志接口,就是logging模块。日志级别有DEBUG、INFO、WARNING、ERROR、CRITICAL五种(级别依次升高),分别对应的函数为debug()info()warning()error()critical()

>>> import logging>>> logging.debug("ni hao")>>> logging.info("ni hao2")>>> logging.warning("ni hao")WARNING:root:ni hao>>> logging.error("ni hao")ERROR:root:ni hao>>> logging.critical("ni hao")CRITICAL:root:ni hao>>>

可以发现debug()info()方法没有显示任何信息,这是因为默认的日志级别是WARNING,所以低于此级别的日志不会记录。

可以利用函数basicCinfig修改日志级别

>>> import logging>>> logging.basicConfig(level=logging.INFO)>>> logging.info("nihao")INFO:root:nihao>>> logging.debug("dfasl")>>> logging.basicConfig(level=logging.DEBUG)>>> logging.info(4)INFO:root:4>>>

basicConfig()函数还可以定义更多的内容,如
代码如下:logging.basicConfig(format=log_format,datefmt='%Y-%m-%d %H:%M:%S %p',level=logging.DEBUG)

举例

import logginglog_format = '%(filename)s %(funcName)s %(asctime)s %(message)s'log_filename = "logging_test.log"logging.basicConfig(filename=log_filename, format=log_format, datefmt='%Y-%m-%d %H:%M:%S:%S %p', filemode='w', level=logging.INFO)logging.warning("warning###########")logging.warning("error@@@@@@@@@@@@@@")logging.error("error~~~~~~~~~~~~~~~~")

结果(输出文件“logging_test.log”内容)

del.py <module> 2015-04-30 16:29:02:02 PM warning
del.py <module> 2015-04-30 16:29:02:02 PM error
del.py <module> 2015-04-30 16:29:02:02 PM error

logging.basicConfig函数各参数

filename: 指定日志文件名 filemode: 和file函数意义相同,指定日志文件的打开模式,'w'或'a' format: 指定输出的格式和内容,format可以输出很多有用信息,如上例所示:     %(levelno)s: 打印日志级别的数值     %(levelname)s: 打印日志级别名称     %(pathname)s: 打印当前执行程序的路径,其实就是sys.argv[0]     %(filename)s: 打印当前执行程序名     %(funcName)s: 打印日志的当前函数     %(lineno)d: 打印日志的当前行号     %(asctime)s: 打印日志的时间     %(thread)d: 打印线程ID     %(threadName)s: 打印线程名称     %(process)d: 打印进程ID     %(message)s: 打印日志信息 datefmt: 指定时间格式,同time.strftime() level: 设置日志级别,默认为logging.WARNING stream: 指定将日志的输出流,可以指定输出到sys.stderr,sys.stdout或者文件,默认输出到sys.stderr,当stream和filename同时指定时,stream被忽略
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表