python logging文档.docx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
python logging文档

Python模块学习 logging 日志记录(一) 许多应用程序中都会有日志模块,用于记录系统在运行过程中的一些关键信息,以便于对系统的运行状况进行跟踪。在.NET平台中,有非常著名的第三方开源日志组件log4net,c++中,有人们熟悉的log4cpp,而在python中,我们不需要第三方的日志组件,因为它已经为我们提供了简单易用、且功能强大的日志模块:logging。logging模块支持将日志信息保存到不同的目标域中,如:保存到日志文件中;以邮件的形式发送日志信息;以http get或post的方式提交日志到web服务器;以windows事件的形式记录等等。这些日志保存方式可以组合使用,每种方式可以设置自己的日志级别以及日志格式。4个主要的组件logger: 日志类,应用程序往往通过调用它提供的api来记录日志;handler: 对日志信息处理,可以将日志发送(保存)到不同的目标域中;filter: 对日志信息进行过滤;formatter:日志的格式化;日志级别 在记录日志时, 日志消息都会关联一个级别(级别本质上是一个非负整数)。系统默认提供了6个级别,它们分别是:级别 对应的值 CRITICAL 50 ERROR 40 WARNING 30 INFO 20 DEBUG 10 NOTSET 0 可以给日志对象(Logger Instance)设置日志级别,低于该级别的日志消息将会被忽略,也可以给Hanlder设置日志级别,对于低于该级别的日志消息, Handler也会忽略。logging模块中的常用函数:logging.basicConfig([**kwargs]): 为日志模块配置基本信息。kwargs 支持如下几个关键字参数:filename :日志文件的保存路径。如果配置了些参数,将自动创建一个FileHandler作为Handler;filemode :日志文件的打开模式。 默认值为a,表示日志消息以追加的形式添加到日志文件中。如果设为w, 那么每次程序启动的时候都会创建一个新的日志文件;format :设置日志输出格式;datefmt :定义日期格式;level :设置日志的级别.对低于该级别的日志消息将被忽略;stream :设置特定的流用于初始化StreamHandler; 几个简单的例子: import logging(log 日志记录 logging登陆 ) LOG_FILENAME=C:\Python25\log_test.txt logging.basicConfig(filename=LOG_FILENAME,level=logging.DEBUG) logging.debug(This message should go to the log file)?然后我们就可以在C盘python25目录下发现一个名为log_test.txt的文件,打开里面的内容为:?DEBUG:root:This message should go to the log file?然后我们重复运行最后一句,会发现这个文本文件每次都会多出一行:DEBUG:root:This message should go to the log file?下面我们看一个更标准的程序: import logging logger=logging.getLogger() handler=logging.FileHandler(Log_test.txt) logger.addHandler(handler) logger.setLevel(logging.NOTSET) logger.error(This is an error message) (This is an info message) logger.critical(This is a critical message)?日志文件中会出现三行内容:This is an error messageThis is an info messageThis is a critical message?上面程序的第2行是生成一个日志对象,里面的参数时日志的名字,可以带,也可以不带(真的是吗)。第3行是生成了一个handler,logging支持很多种Handler,像FileHandler,SocketHandler等等,这里由于我们要写文件,所以用了FileHandler,它的参数就是filename,默认当前路径,当然我们可以自己指定路径。?第5行设置日志信息输出的级别。Logging提供了多种日志级别,如NOTSET,DEBUG,INFO,WARNING,ERROR,CRITICAL(严重错误)等,每个级别都对应一个数值,如果我们不自己设置输出级别,那么系统会执行

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档