Boss内置了Log4j,所以如果在自己项目中使用Log4j,并在项目内配置了log4j.xml就会发生冲突。
因为在JBoss的理念是日志统一管理,所以所有的日志都输出到系统日志里。JBoss提供了为应用分开日志的方法。需要修改jboss的%JBOSS_HOME%/server/xxx/conf/log4j.xml文件jboss-log4j.xml。方法如下:
1.升级JBoss-Logging文件,升级到2.1.1 version。一共三个包jboss-logging-jdk.jar,jboss-logging-log4j.jar,jboss-logging-spi.jar下载下来后,改成原来的名字覆盖原文件(请先备份)。(JBoss5.1版特殊的地方)
2.在jboss-log4j.xml文件里添加:
<appender name="appLog" class="org.apache.log4j.DailyRollingFileAppender"> <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"></errorHandler> <param name="Append" value="true"/> <param name="File" value="${jboss.server.home.dir}/log/app/app.log"/> <param name="DatePattern" value="'.'yyyy-MM-dd-HH-mm"/> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/> </layout> </appender>
3.在同一文件的下面添加:
<category name="com.app"> <priority value="INFO"/> <appender-ref ref="appLog"></appender-ref> </category>
注意:jboss-log4j.xml格式
之后就可以看见日志就输出到配置的app.log文件里了。
JBoss官方文档: http://community.jboss.org/wiki/SeparatingApplicationLogs