45 template<
typename... Args>
48 template<
typename... Args>
55 template<
typename... Args>
56 void trace(
const char *fmt,
const Args &... args);
58 template<
typename... Args>
59 void debug(
const char *fmt,
const Args &... args);
61 template<
typename... Args>
62 void info(
const char *fmt,
const Args &... args);
64 template<
typename... Args>
65 void warn(
const char *fmt,
const Args &... args);
67 template<
typename... Args>
68 void error(
const char *fmt,
const Args &... args);
70 template<
typename... Args>
71 void critical(
const char *fmt,
const Args &... args);
73 #ifdef SPDLOG_WCHAR_TO_UTF8_SUPPORT 75 #error SPDLOG_WCHAR_TO_UTF8_SUPPORT only supported on windows 77 template<
typename... Args>
80 template<
typename... Args>
83 template<
typename... Args>
84 void trace(
const wchar_t *fmt,
const Args &... args);
86 template<
typename... Args>
87 void debug(
const wchar_t *fmt,
const Args &... args);
89 template<
typename... Args>
90 void info(
const wchar_t *fmt,
const Args &... args);
92 template<
typename... Args>
93 void warn(
const wchar_t *fmt,
const Args &... args);
95 template<
typename... Args>
96 void error(
const wchar_t *fmt,
const Args &... args);
98 template<
typename... Args>
99 void critical(
const wchar_t *fmt,
const Args &... args);
101 #endif // SPDLOG_WCHAR_TO_UTF8_SUPPORT 104 template<class T, typename std::enable_if<std::is_convertible<T, spdlog::string_view_t>::value, T>
::type * =
nullptr>
108 template<class T, typename std::enable_if<std::is_convertible<T, spdlog::string_view_t>::value, T>::type * =
nullptr>
112 template<class T, typename std::enable_if<!std::is_convertible<T, spdlog::string_view_t>::value, T>::type * =
nullptr>
116 template<class T, typename std::enable_if<!std::is_convertible<T, spdlog::string_view_t>::value, T>::type * =
nullptr>
120 void trace(
const T &msg);
123 void debug(
const T &msg);
126 void info(
const T &msg);
129 void warn(
const T &msg);
132 void error(
const T &msg);
142 const std::string &
name()
const;
155 const std::vector<sink_ptr> &
sinks()
const;
156 std::vector<sink_ptr> &
sinks();
163 virtual std::shared_ptr<logger>
clone(std::string logger_name);
level::level_enum flush_level() const
std::atomic< time_t > last_err_time_
void incr_msg_counter_(details::log_msg &msg)
void log(level::level_enum lvl, const char *fmt, const Args &... args)
log_err_handler error_handler() const
void trace(const char *fmt, const Args &... args)
std::initializer_list< sink_ptr > sinks_init_list
log_err_handler err_handler_
FMT_CONSTEXPR auto begin(const C &c) -> decltype(c.begin())
logger & operator=(const logger &)=delete
std::atomic< size_t > msg_counter_
const std::string & name() const
level::level_enum level() const
void info(const char *fmt, const Args &... args)
void warn(const char *fmt, const Args &... args)
bool should_log(level::level_enum msg_level) const
std::shared_ptr< sinks::sink > sink_ptr
void debug(const char *fmt, const Args &... args)
const std::vector< sink_ptr > & sinks() const
void set_pattern(std::string pattern, pattern_time_type time_type=pattern_time_type::local)
static level::level_enum default_level()
std::vector< sink_ptr > sinks_
bool should_flush_(const details::log_msg &msg)
FMT_CONSTEXPR auto end(const C &c) -> decltype(c.end())
void critical(const char *fmt, const Args &... args)
void error(const char *fmt, const Args &... args)
void default_err_handler_(const std::string &msg)
virtual std::shared_ptr< logger > clone(std::string logger_name)
spdlog::level_t flush_level_
void set_formatter(std::unique_ptr< formatter > formatter)
std::atomic< int > level_t
void set_error_handler(log_err_handler err_handler)
std::function< void(const std::string &err_msg)> log_err_handler
logger(std::string name, sink_ptr single_sink)
void set_level(level::level_enum log_level)
void flush_on(level::level_enum log_level)
virtual void sink_it_(details::log_msg &msg)