diff --git a/src/logger.cpp b/src/logger.cpp
index 6b30a03058491590d52d72a0bf26cc477e684ad4..70ccc75e37b9c8002c0238f8b71c936db8b6e3b0 100644
--- a/src/logger.cpp
+++ b/src/logger.cpp
@@ -270,11 +270,11 @@ public:
 
     virtual void consume(Msg& msg) = 0;
 
-    void enable(bool en) { enabled_.store(en); }
-    bool isEnable() { return enabled_.load(); }
+    void enable(bool en) { enabled_.store(en, std::memory_order_relaxed); }
+    bool isEnable() { return enabled_.load(std::memory_order_relaxed); }
 
 private:
-    std::atomic<bool> enabled_;
+    std::atomic_bool enabled_ {false};
 };
 
 class ConsoleLog : public Logger::Handler
@@ -580,18 +580,24 @@ log_to_if_enabled(T& handler, Logger::Msg& msg)
     }
 }
 
-static std::atomic_bool debugEnabled {false};
+static std::atomic_bool debugEnabled_ {false};
 
 void
 Logger::setDebugMode(bool enable)
 {
-    debugEnabled.store(enable);
+    debugEnabled_.store(enable, std::memory_order_relaxed);
+}
+
+bool
+Logger::debugEnabled()
+{
+    return debugEnabled_.load(std::memory_order_relaxed);
 }
 
 DRING_PUBLIC void
 Logger::vlog(int level, const char* file, int line, bool linefeed, const char* fmt, va_list ap)
 {
-    if (not debugEnabled.load() and level < LOG_WARNING) {
+    if (not debugEnabled_.load(std::memory_order_relaxed) and level < LOG_WARNING) {
         return;
     }
 
diff --git a/src/logger.h b/src/logger.h
index 535c2a7430ac578f95642c9e7db9ef5d7adce96c..9fd7a1adc0c08007cf32d9a2c8103701d8d4429f 100644
--- a/src/logger.h
+++ b/src/logger.h
@@ -124,6 +124,7 @@ public:
     static void setFileLog(const std::string& path);
 
     static void setDebugMode(bool enable);
+    static bool debugEnabled();
 
     static void fini();