nonebot2/website/versioned_docs/version-2.0.0-beta.3/tutorial/custom-logger.md
github-actions[bot] 9b45b77894 🔖 Release 2.0.0-beta.3
2022-05-20 10:21:32 +00:00

1.5 KiB
Raw Blame History

sidebar_position description
100 修改日志级别与输出

自定义日志

NoneBot 使用 Loguru 进行日志记录,并提供了一些内置的格式和过滤器等。

默认日志

NoneBot 启动时会添加一个默认的日志 handler。此 handler 将会将日志输出到 stdout,并且根据配置的日志级别进行过滤。

默认格式):

default_format: str = (
    "<g>{time:MM-DD HH:mm:ss}</g> "
    "[<lvl>{level}</lvl>] "
    "<c><u>{name}</u></c> | "
    "{message}"
)

from nonebot.log import default_format

默认过滤器:

from nonebot.log import default_filter

转移 logging 日志

NoneBot 提供了一个 logging handler 用于将日志输出转移至 loguru 处理。将 logging 的默认 handler 替换为 LoguruHandler 即可。

from nonebot.log import LoguruHandler

自定义日志记录

如果需要移除 NoneBot 的默认日志 handler可以在 nonebot.init 之前进行如下操作:

from nonebot.log import logger, logger_id

logger.remove(logger_id)

如果需要添加自定义的日志 handler可以在 nonebot.init 之前添加 handler参考 loguru 文档

示例:

from nonebot.log import logger, default_format

logger.add("error.log", level="ERROR", format=default_format, rotation="1 week")