Python Logging Formatter

本文详细介绍了Python中logging模块的使用方法,包括Formatter类的格式设置,如何通过配置基本参数来定制日志输出,以及各种日志级别的具体应用。文章还提供了丰富的代码示例,帮助读者理解如何在实际项目中有效利用日志进行调试和错误追踪。
Python3.8

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

默认只输出'%(message)s',message既是各个级别的输入

class logging.Formatter(fmt=None, datefmt=None, style='%')

方法描述
format(record)
formatTime(record, datefmt=None)
formatException(exc_info)
formatStack(stack_info)

可用的输出

属性格式描述
asctime%(asctime)s易读的时间格式: 默认情况下是’2003-07-08 16:49:45,896’的形式(逗号之后的数字是毫秒部分的时间)
filename%(filename)s路径名的文件名部分。
funcName%(funcName)s日志调用所在的函数名
levelname%(levelname)s消息的级别名称(‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’).
levelno%(levelno)s对应数字格式的日志级别 (DEBUG, INFO, WARNING, ERROR,CRITICAL).
lineno%(lineno)d发出日志记录调用的源码行号 (如果可用)。
module%(module)s所在的模块名(如test6.py模块则记录test6)
message%(message)s记录的信息
name%(name)s调用的logger记录器的名称
process%(process)d进程ID
processName%(processName)s进程名
thread %(thread)d线程ID
threadName%(threadName)s线程名
logging.basicConfig(
                    format='asctime:        %(asctime)s \n'  # 时间
                           'filename_line:  %(filename)s_[line:%(lineno)d] \n'  # 文件名_行号
                           'level:          %(levelname)s \n'  # log级别
                           'message:        %(message)s \n',  # log信息
                    datefmt='%a, %d %b %Y %H:%M:%S',
                    filename='./log.log',
                    filemode='a')  # 如果模式为'a',则为续写(不会抹掉之前的log)

参考:
https://docs.python.org/3/library/logging.html#formatter-objects

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值