Мой вопрос: всякий раз, когда мы загружаем файл свойств (как упомянуто в моем предыдущем вопросе ), мы создаем регистраторы с соответствующими appenders
, используя имя проекта, кроме корневого регистратора.
Как только все регистраторы созданы, мы вызываем приведенный ниже фрагмент кода в каждом классе проекта с именем класса в нем.
Например, созданный ниже регистратор в классе Sample, представленном в проекте com.Drill.Services.Hip
private final Logger logger = Logger.getLogger(LoggingTesterHip.class);
Здесь начинаются мои сомнения, logger
уже создан с именем com.Drill.Services.Hip
в соответствии с файлом конфигурации и может использоваться в том же проекте, но когда мы вызываем Logger.getLogger(LoggingTesterHip.class)
, он возвращает тот же логгер, который был создан в файл свойств с использованием имени проекта (com.Drill.Services.Hip
)?
Потому что я проверял код log4j, и он, похоже, не возвращает тот же логгер, но создает новый. В конце логгер записывает в тот же файл, который установлен в appenders
в файле конфигурации для логгера com.Drill.Services.Hip
.
Как это происходит?