java - jbossstandalone.xml记录器类别到不同的文件

标签 java logging jboss jboss7.x

我想配置jboss 7将两个类别保存在不同的文件中,但是当我启动jboss时,这个文件sql_hib.log是空的。 FILE_SQL 处理程序不起作用。我不知道为什么... 如果我将 FILE_SQL 放置到根记录器 - 那么 sql_hib.log 开始增长,但在这种情况下它包含大量冗余日志。 这是standalone.xml的一部分

<subsystem xmlns="urn:jboss:domain:logging:1.1">
            <console-handler name="CONSOLE">
                ...
            </console-handler>
            <periodic-rotating-file-handler name="FILE">
                ...
            </periodic-rotating-file-handler>
            <periodic-rotating-file-handler name="FILE_SQL" autoflush="true">
                <level name="TRACE"/>
                <formatter>
                    <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss} %-5p [%c] (%t) %s%E%n"/>
                </formatter>
                <file relative-to="jboss.server.log.dir" path="sql_hib.log"/>
                <suffix value=".yyyy-MM-dd"/>
                <append value="true"/>
            </periodic-rotating-file-handler>


            <logger category="org.hibernate.sql">
                <level name="TRACE"/>
                <handlers>
                    <handler name="FILE_SQL"/>
                </handlers>
            </logger>
            <logger category="org.hibernate">
                <level name="TRACE"/>
                <handlers>
                    <handler name="FILE_SQL"/>
                </handlers>
            </logger>
            <root-logger>
                <level name="TRACE"/>
                <handlers>
                    <handler name="CONSOLE"/>
                    <handler name="FILE"/>
                </handlers>
            </root-logger>
        </subsystem>

最佳答案

我知道这是一个非常古老的线程。但这可能对某人有帮助。使用父处理程序就可以了。在这种情况下,它不会通过 root-logger 打印重复的日志。

<periodic-rotating-file-handler name="FILE_SQL" autoflush="true">
    <level name="TRACE"/>
    <formatter>
        <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss} %-5p [%c] (%t) %s%E%n"/>
    </formatter>
    <file relative-to="jboss.server.log.dir" path="sql_hib.log"/>
    <suffix value=".yyyy-MM-dd"/>
    <append value="true"/>
</periodic-rotating-file-handler>
<logger category="org.hibernate.SQL" use-parent-handlers="false">
    <level name="TRACE"/>
    <handlers>
        <handler name="FILE_SQL"/>
    </handlers>
</logger>

关于java - jbossstandalone.xml记录器类别到不同的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38833844/

相关文章:

java - 第二维为空的二维数组如何工作?

java - log4j 根据类和级别输出到不同的文件

java.lang.NoClassDefFoundError : occurs after multiple uses of a program

python - 如何自定义 Tornado 的访问日志

java - Maven 避免包含依赖项

javac:无效标志:编译 java servlet 时出现错误

javascript - 无法打开与同一 SockJS 端点的多个连接

android - Jelly Bean (api 16) 的 READ_LOGS 权限

scala - Play 框架 2.5 记录 `?` 问号而不是行号

web-services - 空 SOAP 响应 - 使用 JBoss 4.2、Jaxb2、Java 1.6