2012-08-22 162 views
1

我已经添加了另一个日志文件,我想知道如何从Java代码中访问它。我找不到任何东西。访问额外的jboss日志文件

我想为用户操作提供单独的日志文件。

这是我的standalone.xml,用于JBOSS AS 7.1.1。

<subsystem xmlns="urn:jboss:domain:logging:1.1"> 
     <console-handler name="CONSOLE"> 
      <level name="INFO"/> 
      <formatter> 
       <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> 
      </formatter> 
     </console-handler> 
     <periodic-rotating-file-handler name="FILE"> 
      <formatter> 
       <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> 
      </formatter> 
      <file relative-to="jboss.server.log.dir" path="server.log"/> 
      <suffix value=".yyyy-MM-dd"/> 
      <append value="true"/> 
     </periodic-rotating-file-handler> 
     <size-rotating-file-handler name="USER" autoflush="false"> 
      <level name="ALL"/> 
      <file relative-to="jboss.server.log.dir" path="user.log"/> 
      <rotate-size value="50m"/> 
      <append value="true"/> 
     </size-rotating-file-handler> 
     <logger category="user" use-parent-handlers="false"> 
      <level name="ALL"/> 
      <handlers> 
       <handler name="USER"/> 
      </handlers> 
     </logger> 
     <logger category="com.arjuna"> 
      <level name="WARN"/> 
     </logger> 
     <logger category="org.apache.tomcat.util.modeler"> 
      <level name="WARN"/> 
     </logger> 
     <logger category="sun.rmi"> 
      <level name="WARN"/> 
     </logger> 
     <logger category="jacorb"> 
      <level name="WARN"/> 
     </logger> 
     <logger category="jacorb.config"> 
      <level name="ERROR"/> 
     </logger> 
     <root-logger> 
      <level name="INFO"/> 
      <handlers> 
       <handler name="CONSOLE"/> 
       <handler name="FILE"/> 
      </handlers> 
     </root-logger> 
    </subsystem> 

我试图写它像这样:

import org.jboss.logging.Logger; 
Logger logger = Logger.getLogger("USER"); 
logger.info("user did something"); 

它在启动时创建的USER.LOG但仍写的server.log。

回答

0

您的分类不符。在配置中,您将记录器类别定义为user(小写)。在您的代码示例中,将类别定义为USER(大写)。更改类别匹配,它会起作用。

<subsystem xmlns="urn:jboss:domain:logging:1.1"> 
    ... 
    <size-rotating-file-handler name="USER" autoflush="false"> 
     <level name="ALL"/> 
     <file relative-to="jboss.server.log.dir" path="user.log"/> 
     <rotate-size value="50m"/> 
     <append value="true"/> 
    </size-rotating-file-handler> 
    <logger category="USER" use-parent-handlers="false"> 
     <level name="ALL"/> 
     <handlers> 
      <handler name="USER"/> 
     </handlers> 
    </logger> 
    ... 
</subsystem> 
+0

工作!谢谢! – tmert1012

+0

也是,直到我将格式化程序/模式格式化程序部分添加到大小旋转文件处理程序时,它才会起作用。 – tmert1012

+0

这很有趣。如果没有指定,它应该有一个默认格式。 –