You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
816 B
C++
38 lines
816 B
C++
1 month ago
|
#include "Logger.h"
|
||
|
|
||
|
Logger* Logger::m_instance = nullptr;
|
||
|
|
||
|
Logger::Logger()
|
||
|
{
|
||
|
}
|
||
|
|
||
|
|
||
|
Logger::~Logger()
|
||
|
{
|
||
|
}
|
||
|
|
||
|
void Logger::WriteLog(int level, std::string logStr)
|
||
|
{
|
||
|
using namespace std::chrono;
|
||
|
std::time_t tt = system_clock::to_time_t(system_clock::now());
|
||
|
auto microsecond = duration_cast<microseconds>(system_clock::now().time_since_epoch()).count() % 1000000;
|
||
|
|
||
|
struct std::tm valtm;
|
||
|
localtime_s(&valtm, &tt);
|
||
|
|
||
|
std::stringstream ss;
|
||
|
ss << std::put_time(&valtm, "%F %X") << " " << microsecond / 1000;
|
||
|
std::cout << ss.str();
|
||
|
|
||
|
|
||
|
std::ofstream logfile;
|
||
|
logfile.open("cardLog.txt", std::ios::out | std::ios::app);
|
||
|
logfile << "Level: " << std::to_string(level) << " " << "time: " << ss.str() << " " << "logContent:" << logStr << std::endl;
|
||
|
|
||
|
if (logfile.is_open())
|
||
|
{
|
||
|
logfile.flush();
|
||
|
logfile.close();
|
||
|
}
|
||
|
}
|