一些日志记录的简单记录:
用basicConfig
可以进行配置
注意日志的等级:
上述代码得到的日志如下(最基础的日志):
关于记录下来的日志格式可以有很多内容:如等级、发生的时间、发生的位置、发生的进程、发生的线程、发生的调用栈等,当日志进行格式化时,可以支持占位符
示例:
日志处理方式:
默认情况下:输出到标准错误stderr中,为了和print使用的标准输出stdout区分开来,pycharm会将日志显示为红色。
如果现在需要:
1.输出到指定的流,比如stdout
中,则通过stream
参数指定输出目标
2.输出到指定的文件,通过filename filemode encoding errors
参数指定文件的打开方式
filemode
默认值是a
即append 附加,errors
默认值是加斜杠转义
注意,不能和输出到流共同使用
日志记录流程
先去检查日志的等级,达到等级才去创建日志记录对象,判断日志是否会被拒绝被过滤,不被拒绝(记录),再交给日志的处理器,处理器再次判断等级(是否达到处理等级),判断是否会被过滤,ok再进行处理(格式化),回到主流程判断是否要交给父处理器再进行循环
- 日志记录器
1 提供方法,供程序创建日志
2 通过等级、过滤器来筛选要处理的日志
3 把要处理的日志交给日志处理器进行处理
默认是root记录器,就是在上述第一次运行日志脚本时看到的root
虽然有默认的,但是我们会创建自己的日志记录器,让不同的日志记录器有自己的执行模式
import logging
logging.basicConfig()
logger_root = logging.getLogger()
logger_a = logging