У меня есть приложение, которое должно регистрировать «сообщения журнала приложения» для одного приложения и «сообщения журнала безопасности» для другого приложения (сообщения журнала безопасности не могут отображаться в журнале приложения).Я думал настроить мои регистраторы так:
Logger appLogger = Logger.getLogger("app." + myClassName);
Logger securityLogger = Logger.getLogger("security." + myClassName);
И настроить мою конфигурацию log4j так:
log4j.logger.app = DEBUG, applicationLogAppender
log4j.additivity.app = false
log4j.logger.security = DEBUG, securityLogAppender
log4j.additivity.security = false
Каков наилучший способ настроить log4j, чтобы сделать это? Я полагаю, что мое решение будет работать и по-прежнему дает разработчикам возможность включать и отключать ведение журнала для определенного пакета / класса, если они помнят префикс имени пакета / класса с помощью «app».или «безопасность», но мне было интересно, есть ли лучший способ сделать это.
ПРИМЕЧАНИЕ. Решение должно работать для log4j и log4cxx.