python之logging日志
2022-05-27 01:08
1896 查看
一、logging介绍:
使用 logging.debug(text)来打印信息,info等的使用方法与debug一致,都只有一个位置参数
默认日志界别为:会输出warning以上的信息,代码示例:
import logging logging.debug("这是一个debug的信息") logging.info("这是一个info的信息") logging.warning("这是一个warning的信息") logging.error("这是一个error的信息") logging.critical("这是一个critical的信息")
查看日志返回:
二.日志的级别:
从低到高分别是:
debug(调试)-》info(打印信息,类似print) -》waring(警告信息)-》 error(错误)-》 critical(致命)
三.日志收集器
可实现自定义打印日志
主要功能:
1.自定义一个日志收集器(getLogger函数),
可自定义名称,否则默认返回
root logger
代码:
my_logger = logging.getLogger('bktest')
2.设置级别(setLevel函数)
可以设置日志的收集级别,否则默认使用wainning日志
3.指定输出渠道
ch = logging.StreamHandler()
4.设置输出级别
my_logger.setLevel('DEBUG')
5.对接,添加渠道
my_logger.addHandler(ch)
当收集日志的级别与输出日志的级别不一致时,最终输出结果是两个级别的交集,代码示例:
import logging my_logging = logging.getLogger('bktest')#创建日志收集器 my_logging.setLevel('DEBUG')#设置日志收集级别 ch =logging.StreamHandler()#输出到控制台 my_logging.setLevel('INFO')#设置日志输出级别 my_logging.addHandler(ch)#对接,添加渠道 my_logging.debug("这是一个debug的信息") my_logging.info("这是一个info的信息") my_logging.warning("这是一个warning的信息") my_logging.error("这是一个error的信息") my_logging.critical("这是一个critical的信息")
查看输出结果:
四.优化日志信息
常用格式化呼输出语句:
%(name)s logger(日志收集器)的名字 %(levelname)s 文本形式的日志级别 %(leveIno)s 数字形式的日志级别 %(pathname)s 调用日志输出函数的模块的完整路径名 %(filename)s 调用日志输出函数的模块的文件名 %(module)s 调用日志输出函数的模块名 %(funName)s 调用日志输出函数的函数名 %(lineno)d 调用日志输出函数的语句所在的代码行 %(created)f 当前时间,用UNIX标准的表示时间的浮点数表示 %(relativeCreated)d 输出日志信息时,自logger创建依赖的毫秒数 %(asctime)s 字符串形式的当前时间,默认格式是"2022-05-27 00:10:00,000"。逗号后面是毫秒 %(thread)d 线程ID,可能没有 %(threadName)s 线程名,可能没有 %(process)d 进程ID,可能没有 %(message)s 用户输出的消息
代码如下:
import logging my_logging = logging.getLogger('bktest')#创建日志收集器 my_logging.setLevel('DEBUG')#设置日志收集级别 ch =logging.StreamHandler()#输出到控制台 my_logging.setLevel('INFO')#设置日志输出级别 my_logging.addHandler(ch)#对接,添加渠道 #指定输出的格式 formatter = logging.Formatter('%(asctime)s-%(levelname)s-%(filename)s-%(name)s-日志信息-%(message)s') #规定日志输出的时候按照formatter格式来打印 ch.setFormatter(formatter) my_logging.debug("这是一个debug的信息") my_logging.info("这是一个info的信息") my_logging.warning("这是一个warning的信息") my_logging.error("这是一个error的信息") my_logging.critical("这是一个critical的信息")
查看输出结果:
相关文章推荐
- python 的日志logging模块学习
- Python 之 日志logging 之 2
- Python日志logging模块功能与用法详解
- 【python】logging日志模块
- Python同时向控制台和文件输出日志logging的方法 Python logging模块详解
- Python的LOG日志相关(logging)------24
- python日志管理:logging
- logging的陷阱:python使用logging不能写日志,写不出日志
- (转)python标准日志模块logging的使用方法
- python的日志logging模块性能以及多进程
- python模块——logging(日志管理)
- python logging 日志输出 学习笔记
- 4.Python记录日志logging模块的使用
- Python日志输出——logging模块
- python —— 使用logging模块简单实现日志系统
- python学习之日志模块logging
- python之强大的日志模块logging
- Python日志输出——logging模块
- Python 日志logging简单使用
- python 的日志logging模块学习