SLF4J Java日志设计

Ana*_*man 4 java logging slf4j

我开始使用SLF4J进行日志记录,而对我来说第一件事就是下面这段代码

public class MyClass
{
   private static final logger = org.slf4j.LoggerFactory.getLogger(MyClass.class)
}
Run Code Online (Sandbox Code Playgroud)

使用类作为参数来获取记录器实例的设计原则或逻辑是什么?

Bri*_*new 8

结果是该记录器生成的每个日志记录语句都包含该类的名称.你想这样做:

  1. 在输出中标识该日志消息的来源
  2. 有效地过滤这些消息.您可以按类和/或包含启用禁用消息.例如,您可能希望禁用所有DAO包消息(无论出于何种原因)

以上是日志记录中非常常见的模式.但请注意,您不必只提供一个类,而是可以提供自己的字符串,从而自行对您的消息进行任意分类.