首页 > 其他分享 >logger.add() 方法的所有参数及其用法说明:

logger.add() 方法的所有参数及其用法说明:

时间:2023-10-10 09:11:28浏览次数:42  
标签:False 指定 add 用法说明 logger True 日志

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)
参数说明:

  1. sink:指定日志消息的目标输出位置。可以是文件名字符串或一个可调用对象。例如:

    • 'my.log':将日志写入到名为 my.log 的文件中。
    • sys.stdout.write:将日志消息输出到标准输出。
  2. format:指定日志记录的格式。可以是一个字符串,其中包含各种占位符和格式化选项。例如:

    • '{time} - {level} - {message}':指定日志消息的格式为时间、日志级别和消息内容。
  3. level:指定要记录的最低日志级别。只有达到或超过此级别的日志才会被记录。可以是字符串或整数值。例如:

    • 'DEBUG':记录所有日志级别,包括 'DEBUG''INFO''WARNING''ERROR' 和 'CRITICAL'
    • 2020 对应的日志级别是 'INFO',只记录 'INFO''WARNING''ERROR' 和 'CRITICAL' 级别的日志。
  4. filter:指定一个过滤器函数,用于决定是否记录特定的日志消息。过滤器函数接受一个日志记录器实例(logger)和日志消息(record)作为参数,并返回一个布尔值。例如:

    pythonCopy Code
    def custom_filter(logger, record):
        return record["level"].name == "WARNING"
    
  5. enqueue:指定是否在日志消息上使用队列进行处理。默认情况下为 True,启用队列处理。

  6. colorize:指定是否对日志消息进行颜色编码以进行区分。默认情况下为 True,启用颜色编码。

  7. serialize:指定是否对日志消息进行序列化。默认情况下为 True,启用序列化。

  8. backtrace:指定是否包括完整的回溯信息,当发生错误时,默认为 False

  9. diagnose:指定是否诊断捕获异常时显示所有已注册的处理程序。默认为 False

  10. catch:指定是否在记录器中处理其他未处理的异常。默认为 True,启用处理。

  11. format_datetime:自定义 DateTime 格式化选项。

  12. rotation:指定日志文件滚动(轮转)的选项。可以是字符串或一个 loguru.rotation.Rotation 实例。

  13. compression:指定日志文件是否应在滚动时进行压缩。默认为 False,不压缩。

  14. retention:指定保留的日志文件数量(滚动文件)。可以是天数(整数),也可以是字符串格式的天数(例如 '7 days')。

  15. encoding:指定日志文件的编码类型。默认为 'utf-8'

  16. 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

相关文章

  • 论文阅读(一)—— Adding Conditional Control to Text-to-Image Diffusion Models
    ......
  • [893] Add comments at a batch file (CMD)
    ref:HowdoIdocommentsataWindowscommandprompt?REM isthestandardway:REMthisisacommentYoucouldalsousethedouble-colonconventioncommonlyseeninbatchfiles:::anothercommentAsinglecolonfollowedbyastringisalabel,buta......
  • 虚拟环境搭建、luffy后台项目创建,目录调整、封装logger、封装全局异常、封装Response
    虚拟环境搭建#1虚拟环境作用多个项目,自己有自己的环境,装的模块属于自己的#2使用pycharm创建-一般放在项目路径下:venv文件夹-lib文件夹---》site-package--》虚拟环境装的模块,都会放在这里-scripts--》python,pip命令#3本地创建......
  • 虚拟环境搭建,luffy后台项目创建、目录调整,封装logger,封装全局异常,封装Response,后台数
    1虚拟环境搭建......
  • 在ARM架构中,虚拟地址(Virtual Address,VA)与块地址
     在ARM架构中,虚拟地址(VirtualAddress,VA)与块地址(BlockAddress)之间存在一定的关系。虚拟地址是指应用程序或操作系统使用的逻辑地址,用于在虚拟内存中存储和访问数据。虚拟地址到物理地址的映射由操作系统管理和控制,具体实现方式与具体的内存管理单元(MMU)的实现有关。块地址是指......
  • 正确安装PaddleOCR的方法
     paddleocr安装起来太费劲了pipinstallpatch-ngpipinstallpaddleocr --use-pep517  (失败)1.首先去github下载:https://github.com/PaddlePaddle/PaddleOCR,然后找个文件夹解压。(从CSDN中点开链接时会提供加速功能,跳转到了https://gitcode.net/mirrors/paddlepaddle/padd......
  • python日志logger
    写代码过程中,为了方便问题定位,经常需要打印信息,但是太多的print()不好,所以可以用到loggerLogger通常分为两类:一类是StreamHandler,将日志信息输出到控制台;另一类是FileHandler,将日志信息输出到文件。Python标准库中的logging模块提供了强大的Logger功能。importloggingcla......
  • PaddleOCR安装过程中的ERROR
    PaddleOCR安装过程中的ERROROSError:(External)CUDAerror(222),theprovidedPTXwascompiledwithanunsupportedtoolchain..[Hint:'cudaErrorUnsupportedPtxVersion'.ThisindicatesthattheprovidedPTXwascompiledwithanunsupportedtoolchain.Th......
  • Converting Virtual Addresses to Physical Addresses
    ConvertingVirtualAddressestoPhysicalAddresses Mostdebuggercommandsusevirtualaddresses,notphysicaladdresses,astheirinputandoutput.However,therearetimesthathavingthephysicaladdresscanbeuseful.Therearetwowaystoconverta......
  • 【算法】国庆加班,火锅与Linq.AddRange的奇妙螺旋
    在国庆假期的一个傍晚,小悦正在家中享受火锅美食。她嘴里咀嚼着鲜嫩的牛肉,脸上洋溢着满足的微笑。突然,手机铃声响起,打破了这温馨的氛围。她拿起手机一看,是公司打来的电话。“小悦,有个紧急的项目需要处理,你能来公司加一下班吗?”电话那头传来领导焦急的声音。小悦顿时嘟起嘴,不太情......