python的日志处理

2022-12-23  本文已影响0人  追梦人在路上不断追寻

日志记录是一种记录软件运行时发生的事件的方法。软件开发人员将日志记录调用添加到他们的代码中用来跟踪和记录事件。事件具有不同的重要性,因此开发人员将根据事件的重要性的程度来记录日志。

Python 日志记录模块是一个允许自定义消息日志记录的内置包。它允许您记录不同严重程度的消息(例如,调试、信息、警告、错误、严重)并定义记录消息的目的地(例如,控制台、文件、网络)。

python logging

日志记录模块采用模块化方法,它提供各种组件:

日志记录是通过调用记录器类实例上的方法来执行的。要使用日志记录模块,您首先需要导入它并配置一个日志记录器。以下是如何执行此操作的示例:

import logging

logging.basicConfig(level=logging.DEBUG, format = '%(asctime)s - %(levelname)s - %(message)s' ) 
logger = logging.getLogger(__name__)

在此示例中,'basicConfig'函数用于将日志级别配置为'DEBUG'以及包括时间、日志级别和消息的日志格式。' getLogger '函数用于创建具有指定名称的记录器。

命名记录器时使用的一个好的约定是在每个使用日志记录模块的模块中使用模块级记录器,如示例所示:

logger  = logging.getLogger(__name__)

一旦配置了记录器,就可以使用它来记录各种严重级别的消息。例如:

logger.debug ( '这是一条调试消息' ) 
logger.info( '这是一条信息消息' ) 
logger.warning( '这是一条警告消息' ) 
logger.error( '这是一条错误消息' )
logger.critical( '这是一条重要信息' )

默认情况下,日志记录模块将记录的消息发送到控制台。但是,也可以将其配置为将消息记录到文件或网络上的其他地方。

例如,要将消息记录到文件中,您可以使用日志模块提供的“FileHandler”类。

import logging 

logger = logging.getLogger(__name__) 
logger.setLevel(logging.DEBUG) 

# 创建一个 FileHandler
handler = logging.FileHandler( 'logfile_example.txt' ) 
handler.setLevel(logging.DEBUG) 

# 创建一个日志格式
formatter = logging .Formatter( '%(asctime)s - %(name)s - %(levelname)s - %(message)s' ) 
handler.setFormatter(formatter) 

# 添加 FileHandler 到 logger
logger.addHandler(handler) 

logger. debug( 'This is a debug message' ) 
logger.info( 'This is an info message' ) 
logger.warning( 'This is a warning message' )
logger.error'这是一条错误消息' ) 
logger.critical( '这是一条关键消息' )

在此示例中,创建了一个文件处理程序并将其添加到记录器实例中。随后为处理程序指定日志记录格式。所有记录的消息都将写入“logfile_example.txt”。

日志记录函数以它们跟踪的事件的严重性或程度命名。以下是标准级别及其应用(按严重性递增顺序):

默认级别是WARNING,这表明只有这个级别和这个级别以上的事件才会被跟踪.

Python 日志记录模块是用于在 Python 应用程序中记录消息的多功能且有效的工具。它允许您确定记录消息的严重性及其目的地,并且它提供了多个用于修改日志格式和处理日志消息的选项。

上一篇下一篇

猜你喜欢

热点阅读