python的logging模块

1、请参考大神写的博客

https://www.cnblogs.com/yyds/p/6901864.html

2、代码示例

 1 """
 2 import logging
 3 import sys
 4 """
 5 logger 日志器对象,提供了应用程序可一直使用的接口
 6 handler 处理器  将logger 创建的日志记录发送到合适的目的输出
 7 Filter  过滤器。提供了更细粒度的控制工具来决定输出哪条日志记录
 8 Formatter 格式器,决定日志记录的最终输出格式
 9 获取日志对象的方法1、实例化logger对象(但是不经常使用),2、logging.getlogger()方法获取日志对象
10 Handler的作用是将消息分发到handler指定的位置(文件、网络、邮件等),logger对象可以通过addhandler()方法为自己添加
11 0个或者多个handler对象,比如一个应用程序有几个日志需求
12 1、把所有日志发送到一个文件中
13 2、把大于error级别的日志输送到 stdout 标准输出
14 3、把大于 critical 级别的日志 输出到email
15 就需要不同的handler来实现不同的功能,最后用logger对象的addHandler()方法进行添加
16 """
17 
18 my_logger = logging.getLogger("my_logger")
19 my_logger.setLevel(logging.DEBUG)
20 file_handler = logging.FileHandler(filename="all.log",mode="a+",encoding="utf-8")
21 # 设置Handler 日志的输出方式
22 file_handler.setFormatter(logging.Formatter("%(asctime)s - %(levelname)s - %(message)s"))
23 file_handler.setLevel(logging.DEBUG)
24 my_logger.addHandler(file_handler)  # 将日志打印输出到文件
25 sysout_handler = logging.StreamHandler(sys.stdout)
26 sysout_handler.setLevel(logging.DEBUG)
27 sysout_handler.setFormatter(logging.Formatter("%(asctime)s - %(levelname)s - %(message)s"))
28 my_logger.addHandler(sysout_handler)# 将日志打印输出到终端
29 
30 my_logger.info("this is info log")
31 my_logger.debug("this is debug log")
32 my_logger.error("this is error log")
33 my_logger.warning("this is warning log")
34 my_logger.critical("this is critical log")

 

posted @ 2021-07-06 22:33  GalaxyStar  阅读(33)  评论(0编辑  收藏  举报