我有一个 JavaEE 应用程序,并将其部署在 JBoss 6.1 上。我想使用 Log4j。
这些是我的依赖项:
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.10</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.4</version>
</dependency>
这是我的 log4j.properties
log4j.rootLogger=info, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{${datestamp}} %5p: %c{2} - %m%n
我已在standalone.conf 中添加了这一行
JAVA_OPTS="$JAVA_OPTS -Dorg.jboss.as.logging.per-deployment=false"
这是我的 jboss-deployment-struct.xml
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
<deployment>
<exclusions>
<module name="org.apache.log4j" />
<module name="org.apache.commons.logging" />
<module name="org.slf4j" />
<module name="org.slf4j.impl" />
</exclusions>
</deployment>
</jboss-deployment-structure>
我在控制台上看不到任何日志。任何想法?
确保$JAVA_OPTS
没有在某处被覆盖(要测试它,您可以将其直接放在standalone.sh
初始化之前的脚本。
如果问题仍然存在,则添加-Dlog4j.configuration
属性来指定配置日志文件的路径(确保您具有正确的权限)。
JAVA_OPTS="$JAVA_OPTS -Dorg.jboss.as.logging.per-deployment=false -Dlog4j.configuration=file:$JBOSS_HOME/standalone/configuration/log4j.xml"
确保你配置log4j.xml file https://docs.jboss.org/process-guide/en/html/logging.html.
请注意,即使您在.conf
文件中,它们将在.sh
文件,因此它们必须采用有效的 shell 格式,这意味着后面有一个空格=
例如可能是您问题的根本原因。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)