我一直在努力解决有关 lo4j 和获取日志记录的问题。经过一番折腾,我去了apache网站:https://logging.apache.org/log4j/2.x/manual/getting-started.html并复制了默认的log4j.xml文件。
<?xml version="1.0" encoding="UTF-8"?>
<Configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="https://logging.apache.org/xml/ns"
xsi:schemaLocation="
https://logging.apache.org/xml/ns
https://logging.apache.org/xml/ns/log4j-config-2.xsd">
<Appenders>
<Console name="CONSOLE">
<JsonTemplateLayout/>
</Console>
</Appenders>
<Loggers>
<Logger name="com.mycompany" level="INFO"/>
<Root level="WARN">
<AppenderRef ref="CONSOLE"/>
</Root>
</Loggers>
</Configuration>
这样做会导致以下错误:
log4j:WARN Continuable parsing error 6 and column 79
log4j:WARN Document root element "Configuration", must match DOCTYPE root "null".
log4j:WARN Continuable parsing error 6 and column 79
log4j:WARN Document is invalid: no grammar found.
log4j:ERROR DOM element is - not a <log4j:configuration> element.
log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
我正在使用 log4j 2.24.2。这是错误还是文档错误?
我在tomcat 9下使用java 8。
该错误似乎是因为我有一个旧版本的 lo4j,它被包含在 maven 为我引入的包之一中。我的 lib 目录中有
log4j-1.2.16.jar
。
我只是停止了我的网络应用程序,删除了这个 jar,然后重新启动并开始获取各种日志消息。