log4j 2 - цветовые журналы для intelij консоли

Я пытаюсь настроить log4j для добавления журналов в разные цвета для каждого типа журнала (INFO, ERROR, DEBUG и т. Д.) Вот мой log4j2.xml:

<Configuration monitorInterval="60">
        <Properties>
            <Property name="log-path">applogs</Property>
        </Properties>
        <Appenders>
            <Console name="Console-Appender" target="SYSTEM_OUT">
                <PatternLayout>
                    <pattern>
                        %highlight{%d{HH:mm:ss.SSS} %-5level %logger{36}.%M() [%L] - %msg%n}{FATAL=red, ERROR=red, WARN=yellow, INFO=green}
                    </pattern>
                </PatternLayout>
            </Console>
            <someMoreAppenders>
        </Appenders>
        <Loggers>
            <Logger name="RepositoriesController" level="info" additivity="false">
                <AppenderRef ref="Console-Appender"/>
            </Logger>
            <Root level="error" additivity="false">
                <AppenderRef ref="Console-Appender"/>
            </Root>
        </Loggers>
    </Configuration>

И в классе RepositoriesController я создаю регистратор следующим образом:

    private static final Logger logger = LogManager.getLogger("RepositoriesController");
   logger.info("Hello, World!");

Мои log4j.properties пусты. Вывод, кажется, отформатирован, используемый моим шаблоном, но цвет шрифта все еще белый:

Интели консоль

я попытался добавить это свойства: spring.main.banner-mode = off spring.output.ansi.enabled = ВСЕГДА и изменить шаблон, но безуспешно, какие-либо советы?

1 ответ

<Console name="Console" target="SYSTEM_OUT">
    <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] 
      %highlight{%level}{FATAL=bg_red, ERROR=red, WARN=yellow, INFO=green, DEBUG=blue} - %msg%n" />
</Console>

%highlight{%level} - с помощью этого вы можете выделить цвета для разных уровней бревен.

Это сгенерирует вывод как:

введите описание изображения здесь

Другие вопросы по тегам