aboutsummaryrefslogtreecommitdiffstats
path: root/src/ui/GpgFrontendUIInit.cpp
diff options
context:
space:
mode:
authorSaturneric <[email protected]>2023-02-03 13:43:55 +0000
committerSaturneric <[email protected]>2023-02-03 13:43:55 +0000
commit11d32517c2f6f538209c893c6b0b24572fba1a36 (patch)
tree0dac14bcad75d9c7c5b5723dc23e6409721966b4 /src/ui/GpgFrontendUIInit.cpp
parentfeat: change logging framework to spdlog (diff)
downloadGpgFrontend-11d32517c2f6f538209c893c6b0b24572fba1a36.tar.gz
GpgFrontend-11d32517c2f6f538209c893c6b0b24572fba1a36.zip
feat: change the log style in source files
Diffstat (limited to '')
-rw-r--r--src/ui/GpgFrontendUIInit.cpp90
1 files changed, 44 insertions, 46 deletions
diff --git a/src/ui/GpgFrontendUIInit.cpp b/src/ui/GpgFrontendUIInit.cpp
index 5cbca31b..0ebcd500 100644
--- a/src/ui/GpgFrontendUIInit.cpp
+++ b/src/ui/GpgFrontendUIInit.cpp
@@ -28,6 +28,11 @@
#include "GpgFrontendUIInit.h"
+#include <spdlog/async.h>
+#include <spdlog/common.h>
+#include <spdlog/sinks/rotating_file_sink.h>
+#include <spdlog/sinks/stdout_color_sinks.h>
+
#include "core/function/GlobalSettingStation.h"
#include "core/thread/CtxCheckTask.h"
#include "core/thread/TaskRunnerGetter.h"
@@ -39,9 +44,6 @@
#include "core/function/GlobalSettingStation.h"
#endif
-// init easyloggingpp library
-INITIALIZE_EASYLOGGINGPP
-
namespace GpgFrontend::UI {
extern void init_logging_system();
@@ -90,13 +92,13 @@ void InitGpgFrontendUI(QApplication* app) {
waiting_dialog->resize(420, 120);
app->connect(init_ctx_task, &Thread::CtxCheckTask::SignalTaskFinished,
waiting_dialog, [=]() {
- LOG(INFO) << "Gpg context loaded";
+ SPDLOG_INFO("gpg context loaded");
waiting_dialog->finished(0);
waiting_dialog->deleteLater();
});
app->connect(waiting_dialog, &QProgressDialog::canceled, [=]() {
- LOG(INFO) << "cancel clicked";
+ SPDLOG_INFO("cancel clicked");
app->quit();
exit(0);
});
@@ -123,7 +125,7 @@ int RunGpgFrontendUI(QApplication* app) {
// create main window and show it
auto main_window = std::make_unique<GpgFrontend::UI::MainWindow>();
main_window->Init();
- LOG(INFO) << "Main window inited";
+ SPDLOG_INFO("main window inited");
main_window->show();
// start the main event loop
return app->exec();
@@ -133,36 +135,33 @@ void init_logging_system() {
using namespace boost::posix_time;
using namespace boost::gregorian;
- el::Loggers::addFlag(el::LoggingFlag::AutoSpacing);
- el::Loggers::addFlag(el::LoggingFlag::ColoredTerminalOutput);
- el::Loggers::addFlag(el::LoggingFlag::StrictLogFileSizeCheck);
-
- el::Configurations defaultConf;
- defaultConf.setToDefault();
-
- // apply settings
- defaultConf.setGlobally(el::ConfigurationType::Format,
- "%datetime %level [ui] {%func} -> %msg");
-
- // apply settings no written to file
- defaultConf.setGlobally(el::ConfigurationType::ToFile, "false");
-
- // apply settings
- el::Loggers::reconfigureLogger("default", defaultConf)->reconfigure();
-
// get the log directory
- auto logfile_path = (GlobalSettingStation::GetInstance().GetLogDir() /
- to_iso_string(second_clock::local_time()));
+ auto logfile_path = (GlobalSettingStation::GetInstance().GetLogDir() / "ui");
logfile_path.replace_extension(".log");
- defaultConf.setGlobally(el::ConfigurationType::Filename,
- logfile_path.u8string());
- // apply settings written to file
- defaultConf.setGlobally(el::ConfigurationType::ToFile, "false");
-
- el::Loggers::reconfigureLogger("default", defaultConf);
+ // sinks
+ std::vector<spdlog::sink_ptr> sinks;
+ sinks.push_back(std::make_shared<spdlog::sinks::stderr_color_sink_mt>());
+ sinks.push_back(std::make_shared<spdlog::sinks::rotating_file_sink_mt>(
+ logfile_path.u8string(), 1048576 * 32, 32));
+
+ // thread pool
+ spdlog::init_thread_pool(1024, 2);
+
+ // logger
+ auto ui_logger = std::make_shared<spdlog::async_logger>(
+ "core", begin(sinks), end(sinks), spdlog::thread_pool());
+ ui_logger->set_pattern(
+ "[%H:%M:%S.%e] [T:%t] [%=4n] %^[%=8l]%$ [%s:%#] [%!] -> %v (+%ius)");
+
+#ifdef DEBUG
+ ui_logger->set_level(spdlog::level::trace);
+#elif
+ core_logger->set_level(spdlog::level::info);
+#endif
- LOG(INFO) << _("log file path") << logfile_path;
+ // register it as default logger
+ spdlog::set_default_logger(ui_logger);
}
/**
@@ -187,20 +186,19 @@ void init_locale() {
// sync the settings to the file
GpgFrontend::GlobalSettingStation::GetInstance().SyncSettings();
- LOG(INFO) << "current system locale" << setlocale(LC_ALL, nullptr);
+ SPDLOG_INFO("current system locale: {}", setlocale(LC_ALL, nullptr));
// read from settings file
std::string lang;
if (!general.lookupValue("lang", lang)) {
- LOG(ERROR) << _("could not read properly from configure file");
+ SPDLOG_ERROR(_("could not read properly from configure file"));
};
- LOG(INFO) << "lang from settings" << lang;
- LOG(INFO) << "project name" << PROJECT_NAME;
- LOG(INFO) << "locales path"
- << GpgFrontend::GlobalSettingStation::GetInstance()
- .GetLocaleDir()
- .c_str();
+ SPDLOG_INFO("lang from settings: {}", lang);
+ SPDLOG_INFO("project name: {}", PROJECT_NAME);
+ SPDLOG_INFO(
+ "locales path: {}",
+ GpgFrontend::GlobalSettingStation::GetInstance().GetLocaleDir().c_str());
#ifndef WINDOWS
if (!lang.empty()) {
@@ -208,14 +206,14 @@ void init_locale() {
// set LC_ALL
auto* locale_name = setlocale(LC_ALL, lc.c_str());
- if (locale_name == nullptr) LOG(WARNING) << "set LC_ALL failed" << lc;
+ if (locale_name == nullptr) SPDLOG_WARN("set LC_ALL failed: {}", lc);
auto language = getenv("LANGUAGE");
// set LANGUAGE
std::string language_env = language == nullptr ? "en" : language;
language_env.insert(0, lang + ":");
- LOG(INFO) << "language env" << language_env;
+ SPDLOG_INFO("language env: {}", language_env);
if (setenv("LANGUAGE", language_env.c_str(), 1)) {
- LOG(WARNING) << "set LANGUAGE failed" << language_env;
+ SPDLOG_WARN("set LANGUAGE failed", language_env);
};
}
#else
@@ -224,16 +222,16 @@ void init_locale() {
// set LC_ALL
auto* locale_name = setlocale(LC_ALL, lc.c_str());
- if (locale_name == nullptr) LOG(WARNING) << "set LC_ALL failed" << lc;
+ if (locale_name == nullptr) SPDLOG_WARN("set LC_ALL failed", lc);
auto language = getenv("LANGUAGE");
// set LANGUAGE
std::string language_env = language == nullptr ? "en" : language;
language_env.insert(0, lang + ":");
language_env.insert(0, "LANGUAGE=");
- LOG(INFO) << "language env" << language_env;
+ SPDLOG_INFO("language env: {}", language_env);
if (putenv(language_env.c_str())) {
- LOG(WARNING) << "set LANGUAGE failed" << language_env;
+ spdlog::warn, "set LANGUAGE failed", language_env;
};
}
#endif