Уровень журнала на appender для единственного Регистратора

Действительно ли возможно настроить различные уровни журнала для единственного Регистратора на основе appender?

Я понимаю, что это подобно этому вопросу, и это - насколько я уже вовлек себя, но проблема с этим состоит в том, что порог относится ко всем регистраторам, которые регистрируют к этому appender, тогда как я только хочу, чтобы порог относился к единственному регистратору.

т.е. До сих пор у меня есть что-то вроде этого:

log4j.rootLogger=WARN, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Threshold=WARN
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout

log4j.logger.mylogger=DEBUG,logfile
log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.DatePattern=${roll.pattern.daily}
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d{${datestamp}} [%t] %-5p %C{2} - %m%n
log4j.appender.logfile.File=mylogfile.log

Я хочу, чтобы mylogger Сообщения отладки были, отправляют к файлу журнала appender, но я также хочу, чтобы mylogger ИНФОРМАЦИОННЫЕ сообщения были отправлены в stdout appender (но для всех других регистраторов только ПРЕДУПРЕЖДАЮТ ings). Используя Порог для ограничения stdout для ПРЕДУПРЕЖДЕНИЯ ограничивает вывод mylogger.

49
задан Community 23 May 2017 в 02:19
поделиться

1 ответ

Существует статический метод PresentationSource.StartVisual , который:

Возвращает источник, в котором представлен предоставленный Visual.

Я знаю, что это не решает лежащую в основе проблему, но вы можете проверить, что Visual подключен к PresentationSource, прежде чем звонить По экрану . Это предотвратило бы исключение, но вам нужно было бы еще немного выяснить, почему это не было связано в первую очередь.

-121--2447919-

Либо. Это зависит.

В зависимости от ваших знаний (и знаний вашей команды) (т.е. XPath не будет эффективным, никто не знает XPath, но все знают LINQ в XML). Также некоторые операции могут быть проще в одной или другой.

-121--4904034-

Ага, я исправил это, изменив

log4j.appender.stdout.Threshold=WARN

на

log4j.appender.stdout.Threshold=INFO

.

47
ответ дан 7 November 2019 в 11:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: