summaryrefslogtreecommitdiff
path: root/include/CommonAPI/Logger.hpp
diff options
context:
space:
mode:
authorJürgen Gehring <juergen.gehring@bmw.de>2015-07-28 06:46:54 -0700
committerJürgen Gehring <juergen.gehring@bmw.de>2015-07-28 06:46:54 -0700
commit3d2fb21d0e93b6b595610285e910ac80c099a174 (patch)
tree56265166864b3ce52ef713f827d4f580ec38f667 /include/CommonAPI/Logger.hpp
parent56d1059459c24971bcbf45adef60f6dfd0b44667 (diff)
downloadgenivi-common-api-runtime-3d2fb21d0e93b6b595610285e910ac80c099a174.tar.gz
CommonAPI 3.1.3
Diffstat (limited to 'include/CommonAPI/Logger.hpp')
-rw-r--r--include/CommonAPI/Logger.hpp19
1 files changed, 12 insertions, 7 deletions
diff --git a/include/CommonAPI/Logger.hpp b/include/CommonAPI/Logger.hpp
index d2761ac..2247ea1 100644
--- a/include/CommonAPI/Logger.hpp
+++ b/include/CommonAPI/Logger.hpp
@@ -120,20 +120,25 @@ public:
};
COMMONAPI_EXPORT Logger();
+ COMMONAPI_EXPORT ~Logger();
template<typename... _LogEntries>
COMMONAPI_EXPORT static void log(Level _level, _LogEntries... _entries) {
- std::stringstream buffer;
- log_intern(buffer, _entries...);
- Logger::get()->doLog(_level, buffer.str());
+#if defined(USE_CONSOLE) || defined(USE_FILE) || defined(USE_DLT)
+ if (_level < maximumLogLevel_) {
+ std::stringstream buffer;
+ log_intern(buffer, _entries...);
+ Logger::get()->doLog(_level, buffer.str());
+ }
+#endif
}
- COMMONAPI_EXPORT static void init(bool, const std::string &, bool = false, const std::string & = "");
+ COMMONAPI_EXPORT static void init(bool, const std::string &, bool, const std::string &);
private:
- COMMONAPI_EXPORT static inline std::shared_ptr<Logger> get() {
- static std::shared_ptr<Logger> theLogger = std::make_shared<Logger>();
- return theLogger;
+ COMMONAPI_EXPORT static inline Logger *get() {
+ static Logger theLogger;
+ return &theLogger;
}
COMMONAPI_EXPORT static void log_intern(std::stringstream &_buffer) {