Files
Sourcetrail/src/lib/utility/logging/FileLogger.h
T
wrongway88 25f3c4666a src: Logger Utility
Added logger utility and outsourced file name creation for file loggers to it
2017-03-29 22:56:37 +02:00

41 lines
1009 B
C++

#ifndef FILE_LOGGER_H
#define FILE_LOGGER_H
#include <string>
#include "utility/logging/Logger.h"
#include "utility/logging/LogMessage.h"
class FileLogger: public Logger
{
public:
FileLogger();
virtual ~FileLogger();
void setLogDirectory(const std::string& filePath);
void setFileName(const std::string& fileName);
void setMaxLogLineCount(unsigned int logCount);
// setting the max log file count to 0 will disable ringlogging
void setMaxLogFileCount(unsigned int amount);
private:
virtual void logInfo(const LogMessage& message);
virtual void logWarning(const LogMessage& message);
virtual void logError(const LogMessage& message);
void logMessage(const std::string& type, const LogMessage& message);
void updateLogFileName();
std::string m_logFileName;
std::string m_logDirectory;
unsigned int m_maxLogLineCount;
unsigned int m_maxLogFileCount;
unsigned int m_currentLogLineCount;
unsigned int m_currentLogFileCount;
std::string m_currentLogFileName;
};
#endif // FILE_LOGGER_H