Created logging system
This commit is contained in:
24
include/logger.cpp
Normal file
24
include/logger.cpp
Normal file
@ -0,0 +1,24 @@
|
||||
#include "logger.hpp"
|
||||
#ifndef LoggerClassB
|
||||
#define LoggerClassB
|
||||
String *Logger::LevelHeaders = new String[7]{"", "Trace", "Debug", "Info", "Warn", "Error", "Fatal"};
|
||||
Logger::Level Logger::MinLevel = DefaultLogLevel;
|
||||
GenericArray<KeyValuePair<Logger::Level, String>> Logger::LogBook = GenericArray<KeyValuePair<Level, String>>();
|
||||
|
||||
void Logger::Log(Level level, String message)
|
||||
{
|
||||
String line = '[' + Logger::LevelHeaders[level] + ']' + ' ' + message;
|
||||
|
||||
LogBook.Append(KeyValuePair<Level, String>(level, line));
|
||||
if (level >= MinLevel)
|
||||
Serial.println(line);
|
||||
}
|
||||
|
||||
void Logger::Log(String message)
|
||||
{
|
||||
String line = '[' + Logger::LevelHeaders[Level::INFO] + ']' + ' ' + message;
|
||||
|
||||
LogBook.Append(KeyValuePair<Level, String>(Level::INFO, line));
|
||||
Serial.println(line);
|
||||
}
|
||||
#endif
|
||||
27
include/logger.hpp
Normal file
27
include/logger.hpp
Normal file
@ -0,0 +1,27 @@
|
||||
#include <WString.h>
|
||||
#include "GenericArray.hpp"
|
||||
#include "KeyValuePair.hpp"
|
||||
|
||||
#ifndef LoggerClassH
|
||||
#define LoggerClassH
|
||||
#define DefaultLogLevel Level::INFO
|
||||
|
||||
class Logger
|
||||
{
|
||||
public:
|
||||
static String* LevelHeaders;
|
||||
enum Level
|
||||
{
|
||||
TRACE = 1,
|
||||
DEBUG = 2,
|
||||
INFO = 3,
|
||||
WARNING = 4,
|
||||
ERROR = 5,
|
||||
FATAL = 6
|
||||
};
|
||||
static void Log(String message);
|
||||
static void Log(Level level, String message);
|
||||
static Level MinLevel;
|
||||
static GenericArray<KeyValuePair<Level, String>> LogBook;
|
||||
};
|
||||
#endif
|
||||
Reference in New Issue
Block a user