2012-03-08 71 views
0

我有一个战争文件,我部署到JBOSS_HOME/server/default/deployjboss-log4j.xml中的设置不起作用

我添加以下到JBOSS_HOME/server/default/conf/jboss-log4j.xml

<appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender"> 
      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/> 
      <param name="File" value="${jboss.server.log.dir}/server.log"/> 
      <param name="Append" value="false"/> 
      <param name="Threshold" value="INFO"/> 

      <param name="DatePattern" value="'.'yyyy-MM-dd"/> 

      <layout class="org.apache.log4j.PatternLayout"> 
        <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/> 
      </layout> 
    </appender> 

我重新启动服务器,

但日志不会Server.log下写作,

日志被boot.log下生成(包括我的战争部署日志也)在路径JBOSS_HOME/server/default/logs/

(进出口运行JBoss与JDK7在Linux上)

+0

这是一个更多的log4j问题,您应该添加相应的标记。 – 2012-03-08 09:31:00

回答

0

见根部分,添加<appender-ref ref="FILE"/>

<!-- ======================= --> 
    <!-- Setup the Root category --> 
    <!-- ======================= --> 

    <root> 
     <!-- 
     Set the root logger priority via a system property. Note this is parsed by log4j, 
     so the full JBoss system property format is not supported; e.g. 
     setting a default via ${jboss.server.log.threshold:WARN} will not work.   
     --> 
     <priority value="${jboss.server.log.threshold}"/> 
     <appender-ref ref="CONSOLE"/> 
     <appender-ref ref="FILE"/> 
    </root> 
0

定义一个appender是不够的本身。您需要将该appender与记录器层次结构中的一个或多个记录器相关联。如果您查看文件的其他部分,您会看到使用<appender-ref>元素定义的记录器。这会将该记录器的输出发送给该appender。

如果你想要做的就是发送所有记录到新的appender,然后加入<appender-ref><root>元素,它定义根记录器,例如

<root> 
    <!-- existing config in <root> --> 
    <appender-ref ref="FILE"/> <!-- reference to my new appender --> 
</root> 

有关更多详细信息,请参阅此tutorial at JavaLobby