Я использую Log4j, и у меня есть следующая проблема: есть ли способ добавить еще один регистратор из вашего кода? (не корневой журнал). В моем файле конфигурации я установил следующие два регистратора:
log4j.rootCategory=INFO, ALogFile
log4j.logger.BLog=INFO,BLog
Я хотел бы удалить вторую строку из файла конфигурации и добавить BLOG из кода. Это возможно?
Эквивалентный код должен быть:
Logger logger = Logger.getLogger("BLog");
logger.setLevel(Level.INFO);
logger.addAppender(Logger.getRootLogger().getAppender("BLog")); // see notes below
Т.е. вы получаете объект Logger
для имени BLog
, тогда вы устанавливаете уровень INFO
и присоединяете добавление, которое предположительно определено в другом месте вашего конфигурационного файла, называемого BLog
.
Примечание: на основании ответов на этот вопрос вам может потребоваться прикрепить приложение к регистратору, чтобы иметь возможность ссылаться на него, как это делает мой код выше. Или просто определите приложение в своем коде.