Что означает threshold в Log4J?



Привет Всем
У меня есть свойства log4j что-то вроде ниже. Все, что регистрируется в текстовом процессоре.журнал-это что-то выше уровня предупреждения. Я не понимаю порог, который установлен здесь для отладки. Может кто-нибудь объяснить, что порог делает



log4j.logger.TextProcessor=warn,TextProcessor


log4j.appender.TextProcessor=org.apache.log4j.RollingFileAppender
log4j.appender.TextProcessor.File=C:/project/logs/TextProcessor.log
log4j.appender.TextProcessor.MaxFileSize=10MB
log4j.appender.TextProcessor.MaxBackupIndex=10
log4j.appender.TextProcessor.Threshold=debug
log4j.appender.TextProcessor.layout=org.apache.log4j.PatternLayout
log4j.appender.TextProcessor.layout.ConversionPattern=[%d] [%5p] (%F:%L) - %m%n


спасибо заранее

802   4  

4 ответов:

У вас есть две вещи здесь : регистратор и приложение. К сожалению, вы выбрали одно и то же имя для обоих, что не очень ясно.

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

после того, как сообщение принято регистратором, оно отправляется одному или нескольким приложениям (файлу, консоли, почтовому серверу и т. д.).). Каждый из этих приложений может определите порог. Например, можно ограничить сообщения в консоли ошибками, но принимать предупреждающие сообщения в файле журнала.

порог-это второй фильтр для регистрации сообщений

например:

 log4j.logger.TextProcessor=Debug,TextProcessor , InfoLogger
 .
 .
 .
 log4j.appender.TextProcessor.Threshold=Error

Если Logger установлен на уровне DEBUG и порог приложения установлен при ошибке, то с помощью текстового процессора appender будут регистрироваться только сообщения об ошибках и более высокой степени серьезности.

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

 log4j.logger.TextProcessor=Debug,TextProcessor , InfoLogger
 .
 .
 .
 log4j.appender.InfoLogger.Threshold=INFO

чтобы понять уровни , есть ниже уровни ведения журнала в log4j:

FATAL: shows messages at a FATAL level only  
ERROR: Shows messages classified as ERROR and FATAL  
WARNING: Shows messages classified as WARNING, ERROR, and FATAL  
INFO: Shows messages classified as INFO, WARNING, ERROR, and FATAL  
DEBUG: Shows messages classified as DEBUG, INFO, WARNING, ERROR, and FATAL  
TRACE : Shows messages classified as TRACE,DEBUG, INFO, WARNING, ERROR, and FATAL
ALL : Shows messages classified as TRACE,DEBUG, INFO, WARNING, ERROR, and FATAL 
OFF : No log messages display

на URL для более подробной информации

уровни ведения журнала TRACE,DEBUG,INFO,WARN,ERROR и FATAL. Вы сможете выбрать, что регистрировать на каком уровне в коде в зависимости от серьезности. Например, у вас будет возможность регистрировать вход и выход методов, но вы можете выбрать вход в

дайте вам простое сопоставление из файла конфигурации свойств в поток сообщений журнала. (Я спрятал некоторые строки конфигурации, чтобы минимизировать)

log4j.rootLogger=ALL, stdout
log4j.logger.com.xyz=INFO, file

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.file.Threshold=DEBUG
...

log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.Threshold=WARN
...

enter image description here

чтобы понять, что это такое, вы должны знать, что:

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

** есть некоторые вещи более сложные о наследовании и аддитивности, но вы должны начать с основных и простых вещей в первую очередь.

Comments

    Ничего не найдено.