java - 无法使用 Log4j2 在控制台中记录消息,但它们已记录在文件中

标签 java xml logging log4j log4j2

所以我尝试将信息和错误消息记录到控制台和日志文件中。 消息已成功保存在日志文件中,但未记录在控制台中。已附上以下 xml 文件:

<?xml version="1.0" encoding="UTF-8"?>
    <Configuration>
        <Properties>
            <Property name="basePath">./DemoLogs</Property>
        </Properties>
        <Appenders>
            <RollingFile name="File" fileName="${basePath}/app.log" filePattern="${basePath}/app-%d{yyyy-MM-dd}.log">
                <PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %c{2} -%msg%n"/>
                <Policies>
                    <TimeBasedTriggeringPolicy interval="1" modulate="true"/>
                    <SizeBasedTriggeringPolicy size="100 KB"/>
                </Policies>
            </RollingFile>
            <Console name="Console">
                <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
            </Console>
        </Appenders>
        <Loggers>
            <Root level="all">
                <AppenderRef ref="File"/>
            </Root>
            <Logger name="Demo" level="debug" additivity="false">
                <AppenderRef ref="File"/>
            </Logger>
        </Loggers>
    </Configuration>

最佳答案

您需要添加对控制台附加程序的引用。

   <Root level="all">
        <AppenderRef ref="File"/>
        <AppenderRef ref="Console"/>
   </Root>

关于java - 无法使用 Log4j2 在控制台中记录消息,但它们已记录在文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44082740/

相关文章:

java - 使用 Thymeleaf 在 Spring Boot 中记录 Activity 的最佳方式是什么?

ruby-on-rails - 使用 Rails 4 和结构化日志记录,如何将请求 ID 字段添加到日志中?

c# - 作为默认存储日志的 ASP.NET Core 日志记录 API 在哪里?

java - 仅在另一个集合的列表中填充附加/额外字段(使用 lambda)

java - 无法写入 AppData

java - 从 mysql DB 检索数据后如何创建 XML 文件?

java - 解析 XML 并转换为集合

java - java中内部类可以继承外部类的扩展吗?

java - Android 应用程序问题(未运行)

java - 如何删除 JTidy 的所有输出?