#include "Logger.h"
using namespace std;
void ConsoleLogger::Log(const string message) {
cout << getTime() << " -- " << message << endl;
}
const string Logger::getTime() {
time_t rawtime;
struct tm * timeinfo;
time(&rawtime);
timeinfo = localtime(&rawtime);
string time = asctime(timeinfo);
time.erase(time.begin(),time.begin()+4);
time.erase(time.end()-6,time.end());
return time;
}
FileLogger::FileLogger() {
logfile.open("log.txt",fstream::app);
if (!logfile.is_open()) {
cerr << "ERROR: in FileLogger::FileLogger() "
<< "can't open/create log.txt (Permission denied)\n";
throw 10;
}
}
FileLogger::FileLogger(const char* OutputFile) {
logfile.open(OutputFile,fstream::app);
if (!logfile.is_open()) {
cerr << "ERROR: in FileLogger::FileLogger(const char* OutputFile) "
<< "can't open/create log file (Permission denied)\n";
throw 11;
}
}
FileLogger::~FileLogger() {
if (logfile.is_open()) logfile.close();
}
void FileLogger::Log(const string message) {
logfile << getTime() << " -- " << message << endl;
}