Archived
1
Fork 0
This repository has been archived on 2025-04-12. You can view files and clone it, but cannot push or open issues or pull requests.
prism/engine/log/src/log.cpp

25 lines
782 B
C++
Raw Normal View History

2020-08-11 12:07:21 -04:00
#include "log.hpp"
#include <iostream>
#include <chrono>
#include <iomanip>
#include "string_utils.hpp"
#include "utility.hpp"
void prism::log::process_message(const Level level, const System system, const std::string_view message) {
2020-08-11 12:07:21 -04:00
auto now = std::chrono::system_clock::now();
std::time_t t_c = std::chrono::system_clock::to_time_t(now);
std::string date;
date.resize(30);
std::strftime(&date[0], date.size(), "%Y-%m-%d %H:%M:%S", std::localtime(&t_c));
utility::erase(date, '\0'); // strftime will insert \0 for us, but it's not needed here
2020-08-11 12:07:21 -04:00
std::string s = utility::format("{} {} {}: {}", date, utility::enum_to_string(system), utility::enum_to_string(level), message);
2020-08-11 12:07:21 -04:00
std::cout << s << '\n';
stored_output.push_back(s);
}