python自动化笔记(十二)——日志模块logging使用

一、日志级别、输出渠道、内容

1、日志级别(LeveL): DEBUG INFO WARNING ERROR CRITICAL(FATAL)
(如果日志级别是DEBUG,那么所有级别的日志都可以打印,如果日志级别是INFO,那么DEBUG这个级别无法打印,以此类推,一般设置是INFO级别)
在这里插入图片描述

2、输出渠道(Handle): 控制台(StreamHandle)、文件(FileHandle)

3、日志内容(Format): 时间–名称–级别名称–文件名称–行号–自己指定的输出信息

fmt = "%(asctime)s %(name)s %(levelname)s %(filename)s--%(lineno)dline :%(message)s"

也可以自己看源码来更改输出内容格式

二、模块logging使用

1、使用步骤

1.1、创建日志收集器:logging.getLogger(“收集器的名字”)

1.2、设置日志级别:.setLevel(logging.DEBUG)(这里设置的是整体的级别,在渠道还可以另外设置级别,但是只能在这个范围内)

1.3、创建一个输出渠道

1.4、给渠道,设置一个日志输出内容的格式

1.5、将设置好的格式与渠道关联起来

1.6、将设置好的渠道,添加到日志收集器当中

2、输出在控制台

import logging #导入logging模块
# 1创建日志收集器
logger = logging.getLogger("cyy")
# 2设置日志输出级别
logger.setLevel(logging.INFO) # 

# 3设置日志输出在那些渠道
handle1 = logging.StreamHandler() #实例化一个渠道类

# 4设置渠道的输出内容格式   #时间,名称,级别名称,文件名称,行号,自己指定的输出信息
fmt = "%(asctime)s %(name)s %(levelname)s %(filename)s--%(lineno)dline :%(message)s"
formatter = logging.Formatter(fmt)

# 5将日志格式绑定到渠道当中
handle1.setFormatter(formatter)

# 6将设置好的渠道,添加到日志收集器当中
logger.addHandler(handle1)

logger.info("设置好的格式")  #输出日志

输出如下:

2020-12-06 00:18:52,293 cyy INFO log1.py--21line :设置好的日志格式

3 、输出到文件

import logging
# 1创建日志收集器
logger = logging.getLogger("cyy")
# 2设置日志输出级别
logger.setLevel(logging.INFO) # 这里设置的是整体的级别,在渠道还可以另外设置级别,但是只能在这个范围内

# 3设置日志输出到文件
handle2 = logging.FileHandler("cyyc.log",encoding="utf-8") #实例化一个渠道类(文件名、编码格式)

# 4设置渠道的输出内容格式
fmt = "%(asctime)s %(name)s %(levelname)s %(filename)s--%(lineno)dline :%(message)s"
#时间,名称,级别名称,文件名称,行号,自己指定的输出信息
formatter = logging.Formatter(fmt)

# 5将日志格式绑定到渠道当中
handle2.setFormatter(formatter)

# 6将设置好的渠道,添加到日志收集器当中
logger.addHandler(handle2)

logger.info("设置好的日志格式")

输出如下;
在这里插入图片描述
注意:一个收集器可以添加多个渠道,且每个渠道还可以设置级别,但是只能在创建的收集器范围内;例如收集器设置的是INFO,那么渠道最低也只能是INFO,不能是DEBUG。
在这里插入图片描述
4、默认的root日志收集器

如果自己没有创建日志收集器,将会使用默认的root日志收集器,且默认的输出级别:WARNING
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值