feat support log level
All checks were successful
linux-x64-gcc / linux-gcc (Debug) (push) Successful in 32s
linux-x64-gcc / linux-gcc (Release) (push) Successful in 35s

This commit is contained in:
tqcq 2024-03-07 14:30:47 +08:00
parent f4cd4149a7
commit f6b9cc5aee
2 changed files with 11 additions and 0 deletions

View File

@ -20,6 +20,7 @@ enum class LogLevel {
kError,
kFatal,
};
void SetLogLevel(LogLevel level);
void Log(LogLevel level,
const char *tag,

View File

@ -97,6 +97,14 @@ GetCurrentUTCTime()
return result;
}
static LogLevel g_log_level = LogLevel::kTrace;
void
SetLogLevel(LogLevel level)
{
g_log_level = level;
}
void
Log(LogLevel level,
const char *tag,
@ -106,6 +114,8 @@ Log(LogLevel level,
const char *func_name,
...)
{
if (level < g_log_level) { return; }
static std::atomic_bool allow(true);
ScopedAtomicWaiter waiter(allow);
int len = file_name ? strlen(file_name) : 0;