MCPcopy Create free account
hub / github.com/apache/nifi-minifi-cpp / initialize

Method initialize

libminifi/src/core/logging/LoggerConfiguration.cpp:85–115  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

83}
84
85void LoggerConfiguration::initialize(const std::shared_ptr<LoggerProperties> &logger_properties) {
86 std::lock_guard<std::mutex> lock(mutex);
87 root_namespace_ = initialize_namespaces(logger_properties);
88 std::string spdlog_pattern;
89 if (!logger_properties->getString("spdlog.pattern", spdlog_pattern)) {
90 spdlog_pattern = spdlog_default_pattern;
91 }
92
93 /**
94 * There is no need to shorten names per spdlog sink as this is a per log instance.
95 */
96 std::string shorten_names_str;
97 if (logger_properties->getString("spdlog.shorten_names", shorten_names_str)) {
98 utils::StringUtils::StringToBool(shorten_names_str, shorten_names_);
99 }
100
101 formatter_ = std::make_shared<spdlog::pattern_formatter>(spdlog_pattern);
102 std::map<std::string, std::shared_ptr<spdlog::logger>> spdloggers;
103 for (auto const & logger_impl : loggers) {
104 std::shared_ptr<spdlog::logger> spdlogger;
105 auto it = spdloggers.find(logger_impl->name);
106 if (it == spdloggers.end()) {
107 spdlogger = get_logger(logger_, root_namespace_, logger_impl->name, formatter_, true);
108 spdloggers[logger_impl->name] = spdlogger;
109 } else {
110 spdlogger = it->second;
111 }
112 logger_impl->set_delegate(spdlogger);
113 }
114 logger_->log_debug("Set following pattern on loggers: %s", spdlog_pattern);
115}
116
117std::shared_ptr<Logger> LoggerConfiguration::getLogger(const std::string &name) {
118 std::lock_guard<std::mutex> lock(mutex);

Callers 5

registerResourceMethod · 0.45
parsePortYamlMethod · 0.45

Calls 5

set_delegateMethod · 0.80
log_debugMethod · 0.80
getStringMethod · 0.45
findMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected