logging库的使用

xiaoxiao2021-02-28  92

logging库的使用

  在日常的Python的代码编写中,log的输出可以帮助我们了解Python的运行情况,logging库提供了在Python中方便写log的方法。

log输出到屏幕的代码如下:

#!/usr/local/bin/python #-*- coding:utf-8 -*- import logging count = 1 logging.basicConfig(level=logging.DEBUG) logging.debug("Test Case: %d" % count) logging.info(2) logging.warn("Test Case: %d" % count) logging.error(4) logging.critical(5)

  值得注意的是,logging对输出的信息由低到高分为了5类等级,分别是debug,info,warn,error,critical,只有当前的输出等级不小于在logging.basicconfig中设置的level参数才能输出。

log输出到文件的代码如下:

#!/usr/local/bin/python #-*- coding:utf-8 -*- import logging if "__main__" == __name__: logger = logging.getLogger("Test") # 定义一个logger log_path = "./log.txt" # 输出的文件位置 fh = logging.FileHandler(log_path, mode="w") # 定义一个文件的logger handler, 模式默认为在尾部添加,"w"会先删除内容,然后再写log fh.setLevel(logging.WARN) # 设置输出的级别,只有级别不低于该级别的才会输出 # 创建输出格式 fmt = "%(asctime)s %(filename)s[line:%(lineno)d]: %(levelname)s %(message)s" datefmt = "%a %d %b %Y %H:%M:%S" formatter = logging.Formatter(fmt, datefmt) # 获得输出格式对象 fh.setFormatter(formatter) # 为handler设置输出的格式 logger.addHandler(fh) # 为logger指定handler logger.debug("debug message") logger.warn("warn essage") logger.error("error message")

  运行后在log.txt文件中会看到warn和error输出的信息,而没有debug的信息

转载请注明原文地址: https://www.6miu.com/read-54588.html

最新回复(0)