Почему дублирующиеся сообщения регистрируются

Я новичок в log4cplus. У меня есть следующая конфигурация:

log4cplus.rootLogger=TRACE, STDOUT

log4cplus.logger.zios.utl.Thread=DEBUG, STDOUT

log4cplus.appender.STDOUT=log4cplus::ConsoleAppender
log4cplus.appender.STDOUT.layout=log4cplus::PatternLayout
log4cplus.appender.STDOUT.layout.ConversionPattern=%d{%H:%M:%S} [%t] - %m%n

который я загружаю с помощью следующего кода:

try {
log4cplus::PropertyConfigurator::doConfigure("log4cplus.properties");
} catch (...) {
cout << "exception occured while opening log4cplus.properties" << endl;
}

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

Logger log = Logger::getInstance("zios.utl.Thread");
LOG4CPLUS_DEBUG(log, "Thread created");

и что появляется в журнале:

17:10:48 [3075459952] - Thread created
17:10:48 [3075459952] - Thread created

Есть идеи, почему это происходит?

5

Решение

У вас есть один appender, и вы используете его дважды для двух регистраторов:

log4cplus.rootLogger=TRACE, STDOUT
log4cplus.logger.zios.utl.Thread=DEBUG, STDOUT

Это означает, что appender подключен к корневому логгеру и zios.utl.Thread регистратор.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]