Added enable_backtrace to spdlog_api

This commit is contained in:
gabime
2019-08-23 02:28:52 +03:00
parent 65407539bb
commit a6d8b52686
7 changed files with 46 additions and 3 deletions

View File

@@ -8,6 +8,7 @@
#endif
#include "spdlog/sinks/sink.h"
#include "spdlog/sinks/backtrace-sink.h"
#include "spdlog/details/pattern_formatter.h"
#include <cstdio>
@@ -119,6 +120,15 @@ SPDLOG_INLINE void logger::set_pattern(std::string pattern, pattern_time_type ti
set_formatter(std::move(new_formatter));
}
SPDLOG_INLINE void logger::enable_backtrace(level::level_enum trigger_level, size_t n_messages)
{
auto backtrace_sink = std::make_shared<spdlog::sinks::backtrace_sink_mt>(trigger_level, n_messages);
backtrace_sink->set_sinks(std::move(sinks()));
sinks().push_back(std::move(backtrace_sink));
this->set_level(spdlog::level::trace);
}
// flush functions
SPDLOG_INLINE void logger::flush()
{