]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
common/dout.h: extract log level mapping out
authorKefu Chai <kchai@redhat.com>
Sat, 29 Jun 2019 13:34:39 +0000 (21:34 +0800)
committerKefu Chai <kchai@redhat.com>
Sat, 29 Jun 2019 13:38:22 +0000 (21:38 +0800)
so we can reuse it.

Signed-off-by: Kefu Chai <kchai@redhat.com>
src/common/dout.h
src/crimson/common/log.h

index 4fec750f57c2198dd727ddca6a64ac93662eda0d..415678e4992d650908a9a3c6c0d4733cc31726c7 100644 (file)
@@ -127,18 +127,8 @@ struct is_dynamic<dynamic_marker_t<T>> : public std::true_type {};
       std::ostream* _dout = &_out;
 #define dendl_impl                              \
      "";                                        \
-      const std::string _s = _out.str();        \
-      if (_lv < 0) {                            \
-        _logger.error(_s.c_str());              \
-      } else if (_lv < 1) {                     \
-        _logger.warn(_s.c_str());               \
-      } else if (_lv < 5) {                     \
-        _logger.info(_s.c_str());               \
-      } else if (_lv <= 20) {                    \
-        _logger.debug(_s.c_str());              \
-      } else {                                  \
-        _logger.trace(_s.c_str());              \
-      }                                         \
+      _logger.log(ceph::to_log_level(_lv),      \
+                  _out.str().c_str());          \
     }                                           \
   } while (0)
 #else
index 64ff33654ed43368085f896d204373ccb2432985..9f1949fd254142109160760d64c649a783fb3c0e 100644 (file)
@@ -1,6 +1,21 @@
+#pragma once
+
 #include <seastar/util/log.hh>
 #include "common/subsys_types.h"
 
 namespace ceph {
 seastar::logger& get_logger(int subsys);
+static inline seastar::log_level to_log_level(int level) {
+  if (level < 0) {
+    return seastar::log_level::error;
+  } else if (level < 1) {
+    return seastar::log_level::warn;
+  } else if (level < 5) {
+    return seastar::log_level::info;
+  } else if (level <= 20) {
+    return seastar::log_level::debug;
+  } else {
+    return seastar::log_level::trace;
+  }
+}
 }