Loguru 是一个强大而易于使用的日志记录库,logger.add()
方法用于向 Loguru logger 添加处理程序。下面是 logger.add()
方法的所有参数及其用法说明:
logger.add(sink, *, level=None, format=None, filter=None, colorize=None, backtrace=None, diagnose=None, serialize=False, enqueue=False, catch=False)
参数说明:
-
sink
:指定日志消息的目标输出位置。可以是文件名字符串或一个可调用对象。例如:'my.log'
:将日志写入到名为my.log
的文件中。sys.stdout.write
:将日志消息输出到标准输出。
-
format
:指定日志记录的格式。可以是一个字符串,其中包含各种占位符和格式化选项。例如:'{time} - {level} - {message}'
:指定日志消息的格式为时间、日志级别和消息内容。
-
level
:指定要记录的最低日志级别。只有达到或超过此级别的日志才会被记录。可以是字符串或整数值。例如:'DEBUG'
:记录所有日志级别,包括'DEBUG'
、'INFO'
、'WARNING'
、'ERROR'
和'CRITICAL'
。20
:20
对应的日志级别是'INFO'
,只记录'INFO'
、'WARNING'
、'ERROR'
和'CRITICAL'
级别的日志。
-
pythonCopy Codefilter
:指定一个过滤器函数,用于决定是否记录特定的日志消息。过滤器函数接受一个日志记录器实例(logger)和日志消息(record)作为参数,并返回一个布尔值。例如:def custom_filter(logger, record): return record["level"].name == "WARNING"
-
enqueue
:指定是否在日志消息上使用队列进行处理。默认情况下为True
,启用队列处理。 -
colorize
:指定是否对日志消息进行颜色编码以进行区分。默认情况下为True
,启用颜色编码。 -
serialize
:指定是否对日志消息进行序列化。默认情况下为True
,启用序列化。 -
backtrace
:指定是否包括完整的回溯信息,当发生错误时,默认为False
。 -
diagnose
:指定是否诊断捕获异常时显示所有已注册的处理程序。默认为False
。 -
catch
:指定是否在记录器中处理其他未处理的异常。默认为True
,启用处理。 -
format_datetime
:自定义 DateTime 格式化选项。 -
rotation
:指定日志文件滚动(轮转)的选项。可以是字符串或一个loguru.rotation.Rotation
实例。 -
compression
:指定日志文件是否应在滚动时进行压缩。默认为False
,不压缩。 -
retention
:指定保留的日志文件数量(滚动文件)。可以是天数(整数),也可以是字符串格式的天数(例如'7 days'
)。 -
encoding
:指定日志文件的编码类型。默认为'utf-8'
。 -
delay
:指定日志文件是否应立即创建。默认为False
,立即创建。
logger.add("app.log",
level="DEBUG",
format=custom_formatter,
filter=custom_filter,
colorize=True,
backtrace=True,
diagnose=True,
serialize=True,
enqueue=True,
catch=True)
在上述示例中,日志消息将被记录到名为 "app.log" 的文件中,日志级别设定为 DEBUG,使用了自定义的消息格式化函数和过滤器函数,并启用了彩色输出、源代码位置记录、断言失败信息记录。异步记录方式被设置为 True,同时捕获可能出现的异常。
这些参数可以根据您的具体需求进行灵活配置,以满足您的日志记录需求。请注意,在同一应用程序中可以多次调用 logger.add() 来添加不同的日志处理器,以便将日志消息输出到多个位置。
以上是 Loguru 的 logger.add() 方法的所有参数及其用法。更多详细信息和示例,请查阅 Loguru 官方文档:https://loguru.readthedocs.io/en/latest/api/logger.html#logger.add
标签:False,指定,add,用法说明,logger,True,日志 From: https://www.cnblogs.com/xujunhui/p/17753719.html