我添加了另一个日志文件,我想知道如何从Java代码中访问它。我找不到任何东西。
我想要一个单独的日志文件来进行用户操作。
这是我的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 :(得分: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>