summaryrefslogtreecommitdiff
path: root/src/logger/logger.cc
diff options
context:
space:
mode:
authorSiddarth Suresh <155843085+SiddarthSuresh98@users.noreply.github.com>2025-03-11 11:28:25 -0400
committerGitHub <noreply@github.com>2025-03-11 11:28:25 -0400
commite24e3cd4d296599b9ef1b705846b1c868148b0fd (patch)
tree25646d98b4bfcf4b9a664eabfc2651c481984c1d /src/logger/logger.cc
parent357e7fb37caf58cdfcdf85f7553db9378ff16e0c (diff)
parentfde996690d77b81e445450671a0723f837de4eb3 (diff)
Merge pull request #23 from bdunahu/bdunahu
Memory simulator CLI function implementation
Diffstat (limited to 'src/logger/logger.cc')
-rw-r--r--src/logger/logger.cc22
1 files changed, 17 insertions, 5 deletions
diff --git a/src/logger/logger.cc b/src/logger/logger.cc
index fb5052a..55d7a15 100644
--- a/src/logger/logger.cc
+++ b/src/logger/logger.cc
@@ -5,6 +5,10 @@
#include <sstream>
using namespace std;
+LogLevel Logger::level = INFO;
+ofstream Logger::logFile;
+Logger *Logger::logger_instance;
+
Logger::Logger(const string &filename)
{
if (!filename.empty()) {
@@ -17,11 +21,11 @@ Logger::Logger(const string &filename)
Logger::~Logger() { logFile.close(); }
-void Logger::setLevel(LogLevel level) { this->level = level; }
+void Logger::setLevel(LogLevel level) { level = level; }
void Logger::log(LogLevel level, const string &message)
{
- if (levelToInt(level) > levelToInt(this->level)) {
+ if (level_to_int(level) > level_to_int(level)) {
return;
}
@@ -31,7 +35,7 @@ void Logger::log(LogLevel level, const string &message)
strftime(timestamp, sizeof(timestamp), "%Y-%m-%d %H:%M:%S", timeinfo);
ostringstream logEntry;
- logEntry << "[" << timestamp << "] " << levelToString(level) << ": "
+ logEntry << "[" << timestamp << "] " << level_to_string(level) << ": "
<< message << endl;
cout << logEntry.str();
@@ -42,7 +46,15 @@ void Logger::log(LogLevel level, const string &message)
}
}
-string Logger::levelToString(LogLevel level)
+Logger *Logger::getInstance()
+{
+ if (logger_instance == nullptr) {
+ logger_instance = new Logger("vector.log");
+ }
+ return logger_instance;
+}
+
+string Logger::level_to_string(LogLevel level)
{
switch (level) {
case DEBUG:
@@ -60,7 +72,7 @@ string Logger::levelToString(LogLevel level)
}
}
-int Logger::levelToInt(LogLevel level)
+int Logger::level_to_int(LogLevel level)
{
switch (level) {
case DEBUG: