From 5cf5be60d430f6ffa5ddd340dc07eec75918f504 Mon Sep 17 00:00:00 2001 From: cxh Date: Thu, 13 Nov 2025 13:55:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E6=97=A5=E5=BF=97=E6=97=B6?= =?UTF-8?q?=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/logger.cpp | 43 +++++++++++++++++++++---------------------- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/src/logger.cpp b/src/logger.cpp index 452206f..79a209d 100644 --- a/src/logger.cpp +++ b/src/logger.cpp @@ -1,14 +1,15 @@ // logger.cpp #include "logger.hpp" -#include + +#include #include #include -#include +#include std::ofstream Logger::log_file; std::string Logger::current_log_filename; -void Logger::set_log_to_file(const std::string &filename) +void Logger::set_log_to_file(const std::string& filename) { current_log_filename = filename; log_file.open(filename, std::ios::app); @@ -22,12 +23,13 @@ std::string Logger::get_time_string() { auto now = std::chrono::system_clock::now(); auto millis = std::chrono::duration_cast(now.time_since_epoch()) % 1000; - std::time_t t = std::chrono::system_clock::to_time_t(now + std::chrono::hours(8)); // UTC+8 + + std::time_t t = std::chrono::system_clock::to_time_t(now); std::tm tm_now = *std::localtime(&t); std::ostringstream ss; - ss << std::put_time(&tm_now, "%Y-%m-%d %H:%M:%S") - << "." << std::setw(3) << std::setfill('0') << millis.count(); + ss << std::put_time(&tm_now, "%Y-%m-%d %H:%M:%S") << "." << std::setw(3) << std::setfill('0') << millis.count(); + return ss.str(); } @@ -36,34 +38,31 @@ std::string Logger::get_current_time_utc8() using namespace std::chrono; auto now = system_clock::now(); - now += hours(8); // UTC+8 - - std::time_t t = system_clock::to_time_t(now); auto millis = duration_cast(now.time_since_epoch()) % 1000; + std::time_t t = system_clock::to_time_t(now); std::tm tm_now = *std::localtime(&t); std::ostringstream ss; - ss << std::put_time(&tm_now, "%Y%m%d%H%M%S") - << std::setw(3) << std::setfill('0') << millis.count(); + ss << std::put_time(&tm_now, "%Y%m%d%H%M%S") << std::setw(3) << std::setfill('0') << millis.count(); return ss.str(); } -void Logger::log(LogLevel level, const std::string &msg) +void Logger::log(LogLevel level, const std::string& msg) { std::string level_str; switch (level) { - case LogLevel::INFO: - level_str = "[INFO] "; - break; - case LogLevel::WARN: - level_str = "[WARN] "; - break; - case LogLevel::ERROR: - level_str = "[ERROR]"; - break; + case LogLevel::INFO: + level_str = "[INFO] "; + break; + case LogLevel::WARN: + level_str = "[WARN] "; + break; + case LogLevel::ERROR: + level_str = "[ERROR]"; + break; } std::string full_msg = get_time_string() + " " + level_str + " " + msg; @@ -83,7 +82,7 @@ void Logger::log(LogLevel level, const std::string &msg) } } -size_t Logger::get_file_size(const std::string &filename) +size_t Logger::get_file_size(const std::string& filename) { std::ifstream in(filename, std::ifstream::ate | std::ifstream::binary); return in.is_open() ? static_cast(in.tellg()) : 0;