Java Logging框架中的标记是什么?使用它们的原因是什么?

Java Logging框架中的标记是什么?使用它们的原因是什么?,第1张

Java Logging框架中的标记是什么?使用它们的原因是什么?

这是我对“ 在SLF4J /Logback中使用标记的最佳实践
”问题的回答的重新版本。

标记可用于为 单个 log语句 着色 或标记。这些颜色(即标记)的处理完全取决于您。但是,标记使用似乎有两种模式很常见。 __

  1. 触发 :可以指示某些附加程序在存在特定标记的情况下采取措施。例如,

    SMTPAppender
    可以配置为每当用
    NOTIFY_ADMIN
    标记标记日志事件时发送电子邮件,而与日志级别无关。请参阅注销文档中的基于标记的触发。您也可以结合日志级别和标记进行触发。

  2. 过滤 :标记对于使某些有价值的日志语句脱颖而出非常有用。例如,您可以使用颜色“ DB”为所有与持久性相关的日志(在各种和多个类文件中)着色/标记。然后,您可以筛选“ DB”:禁用日志记录,但标有DB的日志语句除外。有关更多信息,请参阅登录文档中有关过滤器的章节(搜索MarkerFilter)。请注意,不仅可以通过登录来执行标记过滤,还可以使用日志分析工具来执行。

在标记出现之前,要实现类似的行为,您可以选择1)使用自定义级别2)使用修改的记录器名称。SLF4J
API当前不支持自定义级别。对于选项2,如果需要修改一个或两个记录器,则可以使用后缀(或前缀)记录器名称。一旦需要对3个或更多记录器进行“子分类”,该方法就变得不切实际,因为相关的配置文件变得难以管理。

即使单个标记可能已经非常有用,但SLF4J的下一版本(即2.0版)将在每个log语句中允许多个标记。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5489533.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-12
下一篇2022-12-12

发表评论

登录后才能评论

评论列表(0条)

    保存