MCPcopy Create free account
hub / github.com/Xtra-Computing/thundersvm / initializeLogger

Method initializeLogger

src/thundersvm/util/log.cpp:2442–2468  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2440 }
2441
2442 void Writer::initializeLogger(const std::string& loggerId, bool lookup, bool needLock) {
2443 if (lookup) {
2444 m_logger = ELPP->registeredLoggers()->get(loggerId, ELPP->hasFlag(LoggingFlag::CreateLoggerAutomatically));
2445 }
2446 if (m_logger == nullptr) {
2447 ELPP->acquireLock();
2448 if (!ELPP->registeredLoggers()->has(std::string(base::consts::kDefaultLoggerId))) {
2449 // Somehow default logger has been unregistered. Not good! Register again
2450 ELPP->registeredLoggers()->get(std::string(base::consts::kDefaultLoggerId));
2451 }
2452 ELPP->releaseLock(); // Need to unlock it for next writer
2453 Writer(Level::Debug, m_file, m_line, m_func).construct(1, base::consts::kDefaultLoggerId)
2454 << "Logger [" << loggerId << "] is not registered yet!";
2455 m_proceed = false;
2456 } else {
2457 if (needLock) {
2458 m_logger->acquireLock(); // This should not be unlocked by checking m_proceed because
2459 // m_proceed can be changed by lines below
2460 }
2461 if (ELPP->hasFlag(LoggingFlag::HierarchicalLogging)) {
2462 m_proceed = m_level == Level::Verbose ? m_logger->enabled(m_level) :
2463 LevelHelper::castToInt(m_level) >= LevelHelper::castToInt(ELPP->m_loggingLevel);
2464 } else {
2465 m_proceed = m_logger->enabled(m_level);
2466 }
2467 }
2468 }
2469
2470 void Writer::processDispatch() {
2471#if ELPP_LOGGING_ENABLED

Callers

nothing calls this directly

Calls 8

WriterClass · 0.85
registeredLoggersMethod · 0.80
acquireLockMethod · 0.80
hasMethod · 0.80
releaseLockMethod · 0.80
getMethod · 0.45
hasFlagMethod · 0.45
enabledMethod · 0.45

Tested by

no test coverage detected