Самудра Гупта объясняет в своей книге1:
Объект Logger
— это основной объект, который разработчик приложения использует для регистрации любого сообщения. Объекты Logger
, действующие в конкретном экземпляре приложения, следуют иерархии родитель-потомок.
Если у вас следующая конфигурация:
log4j.rootLogger=WARN, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout
log4j.logger.com.me.proj2=INFO
Вот как может выглядеть иерархия регистратора:2
Самудра Гупта продолжает объяснять:
На вершине иерархии находится корневой регистратор. Корневой регистратор существует за пределами любой пользовательской иерархии регистраторов, которую мы можем придумать. Он всегда существует как корневой регистратор для всех возможных иерархий регистраторов и не имеет пространства имен. Все остальные объекты Logger
, относящиеся к конкретному приложению, являются дочерними объектами для корневого регистратора. Родительско-дочерние отношения регистраторов означают зависимость регистраторов, действующих в одном и том же приложении. Дочерний регистратор может наследовать свойства своего родительского регистратора рекурсивно вверх по дереву. Как правило, дочерний регистратор наследует следующие свойства от родительского(ых) регистратора(ов):
Level
: Если для дочернего регистратора не указан явный уровень дерева, он будет использовать уровень своего ближайшего родителя или первый правильный уровень, который он находит рекурсивно вверх по иерархии.
Appender
: Если к регистратору не присоединено приложение, дочерний регистратор использует добавление своего ближайшего родительского регистратора или первое добавление, которое он находит рекурсивно вверх по дереву.
ResourceBundle
: ResourceBundles
— это файлы свойств шаблона ключ-значение, используемые для локализации сообщений журнала. Дочерний регистратор наследует все ResourceBundle
, связанные с его родительским регистратором.
ПРИМЕЧАНИЯ
1 Самудра Гупта, Pro Apache Log4j, второе издание (Беркли, Калифорния: Apress, 2005), 24–25, ISBN13: 978-1-59059-499-5
2 Доминик Митчелл, Вход в систему Java, http://happygiraffe.net/blog/2008/09/03/logging-in-java/, дата обращения 26 мая 2014 г.
person
Paul Vargas
schedule
26.05.2014