java - 在 java.util.logging 中,全局记录器有什么用?

标签 java logging java.util.logging

java.util.logging日志记录框架有一个特殊的 Logger名为 "global" 的实例,但我找不到有关其预期用途的任何文档。 Logger.getGlobal() 的文档只是说

Return global logger object with the name Logger.GLOBAL_LOGGER_NAME.

Logger.GLOBAL_LOGGER_NAME ,反过来,仅记录为​​

GLOBAL_LOGGER_NAME is a name for the global logger.

我相当广泛的搜索没有找到任何更有用的文档。

全局记录器的用途是什么?是否记录在我遗漏的地方?

最佳答案

The "global" Logger object is provided as a convenience to developers who are making casual use of the Logging package. Developers who are making serious use of the logging package (for example in products) should create and use their own Logger objects, with appropriate names, so that logging can be controlled on a suitable per-Logger granularity. Developers also need to keep a strong reference to their Logger objects to prevent them from being garbage collected.

来自 here (不要看这个字段被弃用的事实,我只是想给你指出一个有效的解释)。

通常,在应用程序中启用日志记录时,您通常会针对每个 Java 包或类定义更细粒度的记录器。

如果您不想那样做,您可以使用这个全局记录器,它将处理所有记录语句,无论它们包含在哪个库、包或类中。

关于java - 在 java.util.logging 中,全局记录器有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19942521/

相关文章:

java - 使用log4j生成多个日志文件

java - Lombok - 如何创建自定义 setter 并应用于 java 中的不同成员

kubernetes - 将日志文件写入慢速磁盘或将 Tomcat 访问日志发送到 ElasticSearch?

Python 记录问题的简单示例

java - 是否可以以编程方式覆盖 java.util.logging 属性文件中设置的值?

Java:如何将java.util.logging的语言更改为英语?

java - Mockito 谓词中的 "OR"匹配器问题

java - addFooterView() - 是否可以使用该函数添加整个 XML 布局?

java - 多线程程序无法运行

python - 如何在Python日志模块中指定级别?