【发布时间】:2016-10-14 11:06:48
【问题描述】:
我正在用 log4j2 替换我的 java 应用程序中的旧日志系统。
我对记录器名称有点困惑。记录器名称是否与我们在 xml 文件中定义的名称相同,是否应该与 logmanager.getlogger (arg) 的参数相同?
我也不知道是否应该在每个类的顶部定义记录器,它们应该有不同的名称吗?
例如有一个包login和login.ui .
Login 里面有 5 个文件(类)和 ui。我想记录整个登录包。但是我在如何定义 loggers 以及 java 文件的位置以及记录器名称应该有哪些模式方面遇到问题。
Logger logger = logmanager.getlogger( ? )
Logger 对象可以在每个文件中具有相同的名称吗?
谢谢你。
【问题讨论】:
-
每个文件中的Logger对象可以同名吗? - 是应该 Logger 对象在每个文件中具有相同的名称吗? - 没有
-
“Logger 对象是否应该在每个文件中具有相同的名称? - 不” - 因为您无法在日志文件中看到输出来自记录器的名称。不过,有时这可能是有道理的。例如,我将它用于通过 API 跟踪 MessageObjects,因此我可以独立于“正常”应用程序日志记录打开/关闭/详细的登录部分。
-
问题是我使用不同的文件来记录每个包。我现在遇到问题了,我问我是否可以在我的每个类上使用 Logger logger* LogManager.getLogger(MyClass.class) ?