diff options
author | claiff <claiff@mail.ru> | 2022-09-19 19:25:16 +0300 |
---|---|---|
committer | claiff <claiff@mail.ru> | 2022-09-20 12:44:34 +0300 |
commit | 7485f26f35c9cfc1489a2e425fee57a2b51059a9 (patch) | |
tree | a29ccecb6fba0b0b0f4ad3a1f6e12b429434fb77 /src/logger/logger_set.cpp | |
parent | 7fd7a6488625acc45b48ca21d55ed13783cae27f (diff) | |
download | obmc-sila-smtp-7485f26f35c9cfc1489a2e425fee57a2b51059a9.tar.xz |
add logger journal and phosphor
Diffstat (limited to 'src/logger/logger_set.cpp')
-rw-r--r-- | src/logger/logger_set.cpp | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/logger/logger_set.cpp b/src/logger/logger_set.cpp new file mode 100644 index 0000000..8a061ed --- /dev/null +++ b/src/logger/logger_set.cpp @@ -0,0 +1,44 @@ +#include "logger_set.hpp" +#include "journal.hpp" + +namespace smtp::logger +{ + std::shared_ptr < LoggerSet > LoggerSet::mInstance = nullptr; + + LoggerSet::LoggerSet( std::list < types::ILoggerPtr > const& logger ) + : mLogger( logger ) + { + + } + + std::shared_ptr < LoggerSet > LoggerSet::GetInstance() + { + if( !mInstance ) + { + BuildLogger(); + } + return mInstance; + } + + void LoggerSet::BuildLogger() + { + std::list < types::ILoggerPtr > loggers; +#ifdef ADD_JOURNAL_LOGGING + loggers.push_back( std::make_shared < Journal >()); +#endif +#ifdef ADD_PHOSPHOR_LOGGING + loggers.push_back( std::make_shared < Journal >()); +#endif + mInstance.reset( new LoggerSet( loggers )); + } + + void LoggerSet::LogError( std::string const& message ) + { + for( const auto& logger: mLogger ) + { + logger->LogError( message ); + } + } + + +} |