2013-08-23 12 views
5

Jestem nowy w log4cplus. Mam następującą konfigurację:Dlaczego są rejestrowane zduplikowane wiadomości

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 

które załadować z następującego kodu:

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

ładuje się bez incydentów, ale kiedy tylko coś się zalogować, mam dwie wiadomości pojawiające się w moim dzienniku. Na przykład mogę się zalogować przy użyciu tego kodu:

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

i co pojawia się w dzienniku jest:

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

Każdy pomysł, dlaczego tak się dzieje?

Odpowiedz

3

Masz jedną appender i używać go dwa razy, na dwóch rejestratorów:

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

To oznacza, że ​​appender jest dołączony do głównego rejestratora i zios.utl.Thread rejestratorze.

Powiązane problemy