Java Websphere级别上的Log4j为空
因此,我有一个主要使用ApacheCommons日志的遗留应用程序,但有一些是使用Log4J制作的。在我的例子中,当用户删除某个特定文件时,我必须使用Log4J来编写一些日志,文件名只有在运行时才知道,因此我所做的是在Log4J.xml中有一个日志记录程序:Java Websphere级别上的Log4j为空,java,logging,log4j,websphere,Java,Logging,Log4j,Websphere,因此,我有一个主要使用ApacheCommons日志的遗留应用程序,但有一些是使用Log4J制作的。在我的例子中,当用户删除某个特定文件时,我必须使用Log4J来编写一些日志,文件名只有在运行时才知道,因此我所做的是在Log4J.xml中有一个日志记录程序: <logger name="DELETE_LOGGER" additivity="false"> <level value="INFO" /> </logger> 然后我有一个实用程序类,包含:
<logger name="DELETE_LOGGER" additivity="false">
<level value="INFO" />
</logger>
然后我有一个实用程序类,包含:
Logger LOGGER = Logger.getLogger("DELETE_LOGGER");
LOGGER.info(message);
我在Tomcat上工作没有任何问题,在Websphere上创建了文件,但没有记录任何内容。我最终发现Websphere上的记录器级别是null,而不是INFO。有人知道为什么吗?log4j.xml还可以,我不明白。我也有类似的问题。
尝试在记录器名称中省略下划线(“”)。
尝试使用“DELETELOGGER”而不是“DELETE_LOGGER”。我遇到了类似的问题。
尝试在记录器名称中省略下划线(“”)。
尝试使用“DELETELOGGER”而不是“DELETE_LOGGER”。WebSphere中有一个设置,您可以在其中编辑日志详细级别。请确保您的设置正确。我查看了Websphere的“更改日志详细级别”,只找到了一个带有“*=info:fr.improve.struts.taglib.layout.sort.SortUtil=all:fr.improve.struts.*=all”的输入,以及一个没有我的记录器的列表,这看起来与Log4J无关。@nyamiouthegaleanstrope我同意,更改WebSphere日志详细信息不太可能影响log4j。不幸的是,我对log4j了解不够,无法解释为什么没有观察log4j.xml配置。在log4j代码中添加一些诊断逻辑以确定配置不起作用的原因可能是最简单的。@Aramiti这些设置用于WAS使用的Java Util日志记录。它们与log4j无关。WebSphere中有一个设置,您可以在其中编辑日志详细级别。请确保您的设置正确。我查看了Websphere的“更改日志详细级别”,只找到了一个带有“*=info:fr.improve.struts.taglib.layout.sort.SortUtil=all:fr.improve.struts.*=all”的输入,以及一个没有我的记录器的列表,这看起来与Log4J无关。@nyamiouthegaleanstrope我同意,更改WebSphere日志详细信息不太可能影响log4j。不幸的是,我对log4j了解不够,无法解释为什么没有观察log4j.xml配置。在log4j代码中添加一些诊断逻辑以确定配置不起作用的原因可能是最简单的。@Aramiti这些设置用于WAS使用的Java Util日志记录。它们与log4j无关。WebSphere中有一个设置,您可以在其中编辑日志详细级别。请确保您的设置正确。我查看了Websphere的“更改日志详细级别”,只找到了一个带有“*=info:fr.improve.struts.taglib.layout.sort.SortUtil=all:fr.improve.struts.*=all”的输入,以及一个没有我的记录器的列表,这看起来与Log4J无关。@nyamiouthegaleanstrope我同意,更改WebSphere日志详细信息不太可能影响log4j。不幸的是,我对log4j了解不够,无法解释为什么没有观察log4j.xml配置。在log4j代码中添加一些诊断逻辑以确定配置不起作用的原因可能是最简单的。@Aramiti这些设置用于WAS使用的Java Util日志记录。它们与log4j无关。
Logger LOGGER = Logger.getLogger("DELETE_LOGGER");
LOGGER.info(message);