0

我试图了解 Logger.getLogger(Class clazz) 方法的作用。

这是获取 ROOT LOGGER,然后使用传入的类名打印到日志,以便您可以跟踪日志调用的来源?

如何指定不同的日志名称但也使用类命名?

谢谢

4

1 回答 1

1

Logger.getLogger(Class c) 只是 Logger.getLogger(c.getName()) 的简写

类 c.getName() 将此 Class 对象表示的实体的名称作为字符串返回。

它没有获取根记录器并将类的名称添加到输出中。Logger.getLogger(String s) 将返回一个根据 's' 的值命名的记录器(如果存在),或者它将创建一个新的记录器并将其与该名称相关联。

您可以将记录器配置为根据其名称进行不同的输出,并且您可以组成任何您想要的名称。如果你想指定一个包含类名的不同名称,比如 Foo::MyClassName,你可以使用 Logger.getLogger("Foo::"+c.getName())。

于 2013-08-23T22:05:21.920 回答