Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 6 additions & 5 deletions include/cpp-logger/clogger.h
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
#ifdef __cplusplus
extern "C" {
#endif
#define CPP_LOGGER_PRINT 1
#define CPP_LOGGER_ERROR 2
#define CPP_LOGGER_WARN 3
#define CPP_LOGGER_INFO 4
#define CPP_LOGGER_DEBUG 5
const int CPP_LOGGER_PRINT = 1;
const int CPP_LOGGER_ERROR = 2;
const int CPP_LOGGER_WARN = 3;
const int CPP_LOGGER_INFO = 4;
const int CPP_LOGGER_DEBUG = 5;
const int CPP_LOGGER_TRACE = 6;
extern void cpp_logger_clog(const int logger_level, const char* name, const char* string,
...);
extern void cpp_logger_clog_level(const int logger_level, const char* name);
Expand Down
33 changes: 21 additions & 12 deletions include/cpp-logger/logger.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ enum LoggerType {
LOG_ERROR = 2,
LOG_WARN = 3,
LOG_INFO = 4,
LOG_DEBUG = 5
LOG_DEBUG = 5,
LOG_TRACE = 6,
};

class Logger {
Expand All @@ -31,7 +32,7 @@ class Logger {
explicit Logger(std::string app_name)
: _app_name(app_name), level(LoggerType::LOG_ERROR) {}

static std::shared_ptr<Logger> Instance(std::string app_name = "MIMIR") {
static std::shared_ptr<Logger> Instance(std::string app_name = "LOGGER") {
auto iter = instance_map.find(app_name);
std::shared_ptr<Logger> instance;
if (iter == instance_map.end()) {
Expand All @@ -51,36 +52,44 @@ class Logger {
(void)resu;
switch (type) {
case LoggerType::LOG_PRINT: {
if (level >= LoggerType::LOG_PRINT)
if (level >= LoggerType::LOG_PRINT) {
fprintf(stdout, "[%s PRINT]: %s\n", _app_name.c_str(), buffer);
fflush(stdout);
fflush(stdout);
}
break;
}
case LoggerType::LOG_TRACE: {
if (level >= LoggerType::LOG_TRACE) {
fprintf(stdout, "[%s TRACE]: %s\n", _app_name.c_str(), buffer);
fflush(stdout);
}
break;
}
case LoggerType::LOG_DEBUG: {
if (level >= LoggerType::LOG_DEBUG) {
fprintf(stdout, "[%s DEBUG]: %s\n", _app_name.c_str(), buffer);
fflush(stderr);
fprintf(stdout, "[%s DEBUG]: %s\n", _app_name.c_str(), buffer);
fflush(stdout);
}
break;
}
case LoggerType::LOG_INFO: {
if (level >= LoggerType::LOG_INFO) {
fprintf(stdout, "[%s INFO]: %s\n", _app_name.c_str(), buffer);
fflush(stdout);
fprintf(stdout, "[%s INFO]: %s\n", _app_name.c_str(), buffer);
fflush(stdout);
}
break;
}
case LoggerType::LOG_WARN: {
if (level >= LoggerType::LOG_WARN) {
fprintf(stdout, "[%s WARN]: %s\n", _app_name.c_str(), buffer);
fflush(stdout);
fprintf(stdout, "[%s WARN]: %s\n", _app_name.c_str(), buffer);
fflush(stdout);
}
break;
}
case LoggerType::LOG_ERROR: {
if (level >= LoggerType::LOG_ERROR) {
fprintf(stderr, "[%s ERROR]: %s\n", _app_name.c_str(), buffer);
fflush(stderr);
fprintf(stderr, "[%s ERROR]: %s\n", _app_name.c_str(), buffer);
fflush(stderr);
}
break;
}
Expand Down