java - Log4j2不创建日志文件

标签 java logging configuration log4j2

我正在尝试 log4j2 配置

<?xml version="1.0" encoding="UTF-8"?>

<configuration status="info">
    <appenders>
        <Console name="console-log" target="SYSTEM_OUT" append="false">
            <ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="DENY"/>
            <PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %class{36}:%L %M - %msg%xEx%n"/>
        </Console>
        <File name="debug-log" fileName="${catalina.base}/logs/debug.log" append="false">
            <PatternLayout pattern="%d{yyyy-MM-dd 'at' HH:mm:ss.SSS z} %-5level %class{36}:%L %M - %msg%xEx%n"/>
        </File>
        <File name="trace-log" fileName="${catalina.base}/logs/trace.log" append="false">
            <PatternLayout pattern="%d{yyyy-MM-dd 'at' HH:mm:ss.SSS z} %-5level %class{36}:%L %M - %msg%xEx%n"/>
        </File>
        <File name="error-log" fileName="${catalina.base}/logs/error.log" append="false">
            <PatternLayout pattern="%d{yyyy-MM-dd 'at' HH:mm:ss.SSS z} %-5level %class{36}:%L %M - %msg%xEx%n"/>
        </File>
    </appenders>
    <loggers>
        <root level="debug" additivity="false">
            <appender-ref ref="console-log"/>
        </root>
        <Logger name="com.mypackage" level="debug" additivity="false">
            <appender-ref ref="debug-log" level="debug"/>
            <appender-ref ref="trace-log" level="info"/>
            <appender-ref ref="error-log" level="error"/>
        </Logger>
    </loggers>
</configuration>

我正在将日志记录和数据发送到catalina.out,但其余文件尚未创建。 无法弄清楚我可能在这里犯的愚蠢错误吗? 以及如何再创建一个仅包含 debug-log、trace-log、error-log 附加日志的文件。

最佳答案

您的配置有错误:

Console 附加程序不应具有 append 属性。删除它应该可以修复您的配置。

此外,Root 记录器上的 additivity 属性是不必要的。它什么也不做,因为没有更高的记录器可以添加。

您肯定应该在输出中看到类似以下的行,警告您有关错误的配置:

错误控制台包含无效元素或属性“append”

关于java - Log4j2不创建日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28919589/

相关文章:

java - 在两个不同的插件中转换为相同的类型

java - 单击来自不同类的按钮时更新 JFrame

android - Logcat 为什么叫 LogCAT

node.js - 如何在 Express 中捕获(或记录)Response 对象的数据?

Java 小程序日志记录

java - GAE 1.7.2 的套接字连接错误

java - java中静态方法不能通过引用变量访问

java - maven项目出现错误:FirefoxDriver cannot be resolved to a type

configuration - 在应用配置转换期间或之后,我如何让 Octopus 进行变量替换?

git - 如何将多个配置键值对传递给 git clone?