void combinedTest() { LoggerPtr root = Logger::getRootLogger(); bool rootIsConfigured = !root->getAllAppenders().empty(); CPPUNIT_ASSERT(rootIsConfigured); AppenderList list = root->getAllAppenders(); AppenderPtr appender = list.front(); CPPUNIT_ASSERT(appender->getName() == _T("D1")); CPPUNIT_ASSERT(list.size() == 1); }
void AppenderAttachableImpl::removeAllAppenders() { AppenderList::iterator it, itEnd = appenderList.end(); AppenderPtr a; for(it = appenderList.begin(); it != itEnd; it++) { a = *it; a->close(); } appenderList.clear(); }
void AppenderAttachableImpl::removeAppender(const LogString& name) { if (name.empty()) { return; } AppenderList::iterator it, itEnd = appenderList.end(); AppenderPtr appender; for(it = appenderList.begin(); it != itEnd; it++) { appender = *it; if(name == appender->getName()) { appenderList.erase(it); return; } } }
AppenderPtr AppenderAttachableImpl::getAppender(const LogString& name) const { if (name.empty()) { return 0; } AppenderList::const_iterator it, itEnd = appenderList.end(); AppenderPtr appender; for(it = appenderList.begin(); it != itEnd; it++) { appender = *it; if(name == appender->getName()) { return appender; } } return 0; }
void FallbackErrorHandler::setBackupAppender(const AppenderPtr& backup) { LogLog::debug(_T("FB: Setting backup appender to [") + backup->getName() + _T("].")); this->backup = backup; }
void FallbackErrorHandler::setAppender(const AppenderPtr& primary) { LogLog::debug(_T("FB: Setting primary appender to [") + primary->getName() + _T("].")); this->primary = primary; }
void accept() { // set up appender LayoutPtr layout = new SimpleLayout(); AppenderPtr appender = new FileAppender(layout, ACCEPT_FILE, false); // create LevelMatchFilter LevelRangeFilterPtr rangeFilter = new LevelRangeFilter(); // set it to accept on a match rangeFilter->setAcceptOnMatch(true); // attach match filter to appender appender->addFilter(rangeFilter); // set appender on root and set level to debug root->addAppender(appender); root->setLevel(Level::getDebug()); int passCount = 0; LogString sbuf(LOG4CXX_STR("pass ")); Pool pool; StringHelper::toString(passCount, pool, sbuf); sbuf.append(LOG4CXX_STR("; no min or max set")); common(sbuf); passCount++; // test with a min set rangeFilter->setLevelMin(Level::getWarn()); sbuf.assign(LOG4CXX_STR("pass ")); StringHelper::toString(passCount, pool, sbuf); sbuf.append(LOG4CXX_STR("; min set to WARN, max not set")); common(sbuf); passCount++; // create a clean filter appender->clearFilters(); rangeFilter = new LevelRangeFilter(); appender->addFilter(rangeFilter); //test with max set rangeFilter->setLevelMax(Level::getWarn()); sbuf.assign(LOG4CXX_STR("pass ")); StringHelper::toString(passCount, pool, sbuf); sbuf.append(LOG4CXX_STR("; min not set, max set to WARN")); common(sbuf); passCount++; LevelPtr levelArray[] = { Level::getDebug(), Level::getInfo(), Level::getWarn(), Level::getError(), Level::getFatal() }; int length = sizeof(levelArray)/sizeof(levelArray[0]); for (int x = 0; x < length; x++) { // set the min level to match rangeFilter->setLevelMin(levelArray[x]); for (int y = length - 1; y >= 0; y--) { // set max level to match rangeFilter->setLevelMax(levelArray[y]); sbuf.assign(LOG4CXX_STR("pass ")); StringHelper::toString(passCount, pool, sbuf); sbuf.append(LOG4CXX_STR("; filter set to accept between ")); sbuf.append(levelArray[x]->toString()); sbuf.append(LOG4CXX_STR(" and ")); sbuf.append(levelArray[y]->toString()); sbuf.append(LOG4CXX_STR(" msgs")); common(sbuf); // increment passCount passCount++; } } LOGUNIT_ASSERT(Compare::compare(ACCEPT_FILE, ACCEPT_WITNESS)); }