diff options
author | Yann Herklotz <ymherklotz@gmail.com> | 2018-01-05 15:56:35 +0000 |
---|---|---|
committer | Yann Herklotz <ymherklotz@gmail.com> | 2018-01-05 15:56:35 +0000 |
commit | db6480dccd9a3dbf4100a824930a36251f4e743c (patch) | |
tree | a36c5be39c86f9888e64076ef44c386e5160c088 /yage/core/logsink.cpp | |
parent | 7b95e3a9eacf296f215c73e5d8ad9090a24adb20 (diff) | |
download | YAGE-db6480dccd9a3dbf4100a824930a36251f4e743c.tar.gz YAGE-db6480dccd9a3dbf4100a824930a36251f4e743c.zip |
[Engine] Log levels added to engine.
Diffstat (limited to 'yage/core/logsink.cpp')
-rw-r--r-- | yage/core/logsink.cpp | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/yage/core/logsink.cpp b/yage/core/logsink.cpp index 6680c773..1f026059 100644 --- a/yage/core/logsink.cpp +++ b/yage/core/logsink.cpp @@ -82,8 +82,37 @@ public: auto time_t = system_clock::to_time_t(now); auto local_time = std::localtime(&time_t); - (*fileHandle_) << std::put_time(local_time, "[%H:%M:%S] ") << msg - << " (" << meta.fileName << ":" << meta.lineNo << ")\n"; + std::string level; + + switch (meta.level) { + case LogLevel::DEBUG: + level = "DEBUG"; + break; + case LogLevel::INFO: + level = "INFO"; + break; + case LogLevel::WARNING: + level = "WARNING"; + break; + case LogLevel::ERROR: + level = "ERROR"; + break; + case LogLevel::FATAL: + level = "FATAL"; + break; + } + + (*fileHandle_) << std::put_time(local_time, "[%H:%M:%S] [") << level + << "] " << msg << "\n"; + if (meta.fileName != "") { + (*fileHandle_) << "(" << meta.fileName; + if (meta.line != -1) { + (*fileHandle_) << ":" << meta.line << ")"; + } else { + (*fileHandle_) << ")"; + } + } + (*fileHandle_) << "\n\n"; } private: |