]> git.proxmox.com Git - ceph.git/blob - ceph/src/crimson/os/seastore/logging.h
import ceph quincy 17.2.4
[ceph.git] / ceph / src / crimson / os / seastore / logging.h
1 // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2 // vim: ts=8 sw=2 smarttab
3
4 #pragma once
5
6 #include <fmt/format.h>
7
8 #include "crimson/common/log.h"
9
10 #define SET_SUBSYS(subname_) static constexpr auto SOURCE_SUBSYS = ceph_subsys_##subname_
11 #define LOCAL_LOGGER crimson::get_logger(SOURCE_SUBSYS)
12 #define LOGGER(subname_) crimson::get_logger(ceph_subsys_##subname_)
13 #define LOG_PREFIX(x) constexpr auto FNAME = #x
14
15 #define LOG(level_, MSG, ...) \
16 LOCAL_LOGGER.log(level_, "{}: " MSG, FNAME , ##__VA_ARGS__)
17 #define LOGT(level_, MSG, t, ...) \
18 LOCAL_LOGGER.log(level_, "{}({}): " MSG, FNAME, (void*)&t , ##__VA_ARGS__)
19 #define SUBLOG(subname_, level_, MSG, ...) \
20 LOGGER(subname_).log(level_, "{}: " MSG, FNAME , ##__VA_ARGS__)
21 #define SUBLOGT(subname_, level_, MSG, t, ...) \
22 LOGGER(subname_).log(level_, "{}({}): " MSG, FNAME, (void*)&t , ##__VA_ARGS__)
23
24 #define TRACE(...) LOG(seastar::log_level::trace, __VA_ARGS__)
25 #define TRACET(...) LOGT(seastar::log_level::trace, __VA_ARGS__)
26 #define SUBTRACE(subname_, ...) SUBLOG(subname_, seastar::log_level::trace, __VA_ARGS__)
27 #define SUBTRACET(subname_, ...) SUBLOGT(subname_, seastar::log_level::trace, __VA_ARGS__)
28
29 #define DEBUG(...) LOG(seastar::log_level::debug, __VA_ARGS__)
30 #define DEBUGT(...) LOGT(seastar::log_level::debug, __VA_ARGS__)
31 #define SUBDEBUG(subname_, ...) SUBLOG(subname_, seastar::log_level::debug, __VA_ARGS__)
32 #define SUBDEBUGT(subname_, ...) SUBLOGT(subname_, seastar::log_level::debug, __VA_ARGS__)
33
34 #define INFO(...) LOG(seastar::log_level::info, __VA_ARGS__)
35 #define INFOT(...) LOGT(seastar::log_level::info, __VA_ARGS__)
36 #define SUBINFO(subname_, ...) SUBLOG(subname_, seastar::log_level::info, __VA_ARGS__)
37 #define SUBINFOT(subname_, ...) SUBLOGT(subname_, seastar::log_level::info, __VA_ARGS__)
38
39 #define WARN(...) LOG(seastar::log_level::warn, __VA_ARGS__)
40 #define WARNT(...) LOGT(seastar::log_level::warn, __VA_ARGS__)
41 #define SUBWARN(subname_, ...) SUBLOG(subname_, seastar::log_level::warn, __VA_ARGS__)
42 #define SUBWARNT(subname_, ...) SUBLOGT(subname_, seastar::log_level::warn, __VA_ARGS__)
43
44 #define ERROR(...) LOG(seastar::log_level::error, __VA_ARGS__)
45 #define ERRORT(...) LOGT(seastar::log_level::error, __VA_ARGS__)
46 #define SUBERROR(subname_, ...) SUBLOG(subname_, seastar::log_level::error, __VA_ARGS__)
47 #define SUBERRORT(subname_, ...) SUBLOGT(subname_, seastar::log_level::error, __VA_ARGS__)