Logger использует один и тот же цвет для всего вывода

Я пытаюсь настроить slf4j.
. Когда я просто печатаю информацию и ошибку, я получаю следующий вывод:

FATAL:   [http-thread-pool::http-listener-1(5)] INFO com.company.myclass - this is an information  
FATAL:   [http-thread-pool::http-listener-1(5)] ERROR com.company.myclass - this is an error

Кроме слов INFO и ERROR есть похожие, они даже одного цвета - красные.

Это действительно желаемый результат?
Разве INFO не должен быть другого цвета, чтобы их можно было разделить?

Это мой код:

Logger log = LoggerFactory.getLogger(this.getClass());

log.info("this is an information");
log.error("this is an error");

Я добавил эту зависимость Maven: SLF4J Простая привязка » 1.7.25.

Почему оба используют FATAL в качестве префикса?

Youssef NAIT 22.01.2019 13:30

Кстати, я сомневаюсь, что регистратор использует какой-либо цвет, гораздо более вероятно, что это особенность IDE (например, вывод на стандартную ошибку всегда красный или при запуске с FATAL...)

user85421 22.01.2019 13:32
stackoverflow.com/questions/12468141/…
L. Quastana 22.01.2019 13:32

@NAIT: я тоже этого не знаю.

Evgenij Reznik 22.01.2019 13:33

@CarlosHeuberger: Есть идеи, как это изменить? Я использую это неправильно?

Evgenij Reznik 22.01.2019 13:35

Я не использую netbeans, но в любом меню должны быть какие-то настройки или предпочтения...

user85421 22.01.2019 13:36

Какую библиотеку журналов вы используете поверх slf4j?

Youssef NAIT 22.01.2019 13:38

@NAIT: Пожалуйста, смотрите мое обновление. Я только добавил этот импорт Maven.

Evgenij Reznik 22.01.2019 13:41
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
8
210
1

Ответы 1

Вы получаете сообщение красным цветом, потому что slf4j-simple по умолчанию использует System.err в качестве вывода по умолчанию, когда logFile не определен private static String LOG_FILE_DEFAULT = "System.err";. Вы можете проверить это на исходный код.

Если вы хотите, чтобы ваши сообщения печатались белым цветом, вы можете указать свой вывод, используя следующий аргумент -Dorg.slf4j.simpleLogger.logFile=System.out, в этом случае System.err будет заменен на System.out.

Если вместо этого вы выберете другую библиотеку журналов, например Log4j, и предоставите файл конфигурации, вы заметите, что журналы также будут отображаться белым цветом.

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