36#include <fmt/chrono.h>
85#define LOG_DEBUG(msg, ...) Logger::getLogger().log(fmt::format(FMT_STRING(msg), ##__VA_ARGS__), Level::DEBUG)
86#define LOG_INFO(msg, ...) Logger::getLogger().log(fmt::format(FMT_STRING(msg), ##__VA_ARGS__), Level::INFO)
87#define LOG_WARN(msg, ...) Logger::getLogger().log(fmt::format(FMT_STRING(msg), ##__VA_ARGS__), Level::WARN)
88#define LOG_ERROR(msg, ...) Logger::getLogger().log(fmt::format(FMT_STRING(msg), ##__VA_ARGS__), Level::ERROR)
89#define LOG_CRITICAL(msg, ...) Logger::getLogger().log(fmt::format(FMT_STRING(msg), ##__VA_ARGS__), Level::CRITICAL)
90#define LOG_MESSAGE(msg, ...) fmt::print("{}\n", fmt::format(FMT_STRING(msg), ##__VA_ARGS__))
112 void log(
const std::string& msg,
const Level& level);
Level
Log severity levels.
@ WARN
Warning conditions.
@ INFO
Informational messages.
@ CRITICAL
Critical conditions.
Singleton logger class for deltaFlow.
static Logger & getLogger()
Get the singleton Logger instance.
Level m_Level
Minimum logging level.
Logger & operator=(const Logger &)=delete
std::string m_FilePath
Path to the log file.
~Logger()
Destructor flushes and closes log file.
void log(const std::string &msg, const Level &level)
Log a message at a given severity level.
Logger(const Logger &)=delete
std::ofstream file
Output file stream.