28 lines
933 B
C++
28 lines
933 B
C++
#include "utils/log.h"
|
|
|
|
#include "spdlog/sinks/rotating_file_sink.h"
|
|
#include "spdlog/sinks/stdout_color_sinks.h"
|
|
#ifdef _WIN32
|
|
#include "spdlog/sinks/msvc_sink.h"
|
|
#endif
|
|
|
|
namespace utils {
|
|
|
|
void setDefaultLogger(spdlog::level::level_enum logLevel,
|
|
gsl::czstring logFileName, std::uint32_t logFileSize,
|
|
std::uint32_t logFileCount) {
|
|
std::vector<spdlog::sink_ptr> sinks;
|
|
sinks.push_back(std::make_shared<spdlog::sinks::stdout_color_sink_mt>());
|
|
sinks.push_back(std::make_shared<spdlog::sinks::rotating_file_sink_mt>(
|
|
logFileName, logFileSize, logFileCount, false));
|
|
#ifdef _WIN32
|
|
sinks.push_back(std::make_shared<spdlog::sinks::msvc_sink_mt>());
|
|
#endif
|
|
auto chatteringLogger = std::make_shared<spdlog::logger>(
|
|
"Logger", begin(sinks), end(sinks));
|
|
chatteringLogger->set_level(logLevel);
|
|
spdlog::set_default_logger(chatteringLogger);
|
|
}
|
|
|
|
} // namespace Chattr::log
|