ifw  0.0.1-dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Namespaces | Macros | Enumerations | Functions | Variables
Logger.hpp File Reference

Logger class. More...

#include <cstring>
#include <sstream>
#include <stdio.h>
#include <string>
#include <sys/time.h>

Go to the source code of this file.

Classes

class  rad::Logger
 

Namespaces

 rad
 

Macros

#define RAD_LOG_MAX_LEVEL   rad::LOG_LEVEL_TRACE
 
#define RAD_LOG_SETLEVEL(levelName)   rad::Logger::ReportingLevel() = rad::Logger::LevelFromString(levelName)
 
#define RAD_LOG_SETMODNAME(name)   rad::Logger::ModuleName() = name
 
#define RAD_LOG_SETPROCNAME(name)   rad::Logger::ProcName() = name
 
#define RAD_LOG_TO_LOGMON(isEnabled)   rad::Logger::EnableLogMon() = isEnabled
 
#define RAD_LOG_TO_CONSOLE(isEnabled)   rad::Logger::EnableConsole() = isEnabled
 
#define RAD_LOG(level)
 
#define RAD_LOG_ERROR()
 
#define RAD_LOG_WARNING()
 
#define RAD_LOG_INFO()
 
#define RAD_LOG_DEBUG()
 
#define RAD_LOG_DEBUG1()
 
#define RAD_LOG_DEBUG2()
 
#define RAD_LOG_DEBUG3()
 
#define RAD_LOG_DEBUG4()
 
#define RAD_LOG_STATE(a, b)   rad::LogStateFunction(a, b)
 
#define RAD_LOG_EVENT(a)   rad::LogEventFunction(a)
 
#define RAD_LOG_GUARD(a)   rad::LogFunction(rad::LOG_LEVEL_GUARD, __FUNCTION__, a)
 
#define RAD_LOG_ACTION(a)   rad::LogFunction(rad::LOG_LEVEL_ACTION, __FUNCTION__, a)
 
#define RAD_LOG_TRACE()   rad::LogTraceFunction(rad::LOG_LEVEL_TRACE, __FILE__, __FUNCTION__, __LINE__)
 

Enumerations

enum  rad::LogLevel {
  rad::LOG_LEVEL_UNKNOWN = -1, rad::LOG_LEVEL_ERROR = 0, rad::LOG_LEVEL_WARNING, rad::LOG_LEVEL_STATE,
  rad::LOG_LEVEL_EVENT, rad::LOG_LEVEL_GUARD, rad::LOG_LEVEL_ACTION, rad::LOG_LEVEL_INFO,
  rad::LOG_LEVEL_DEBUG, rad::LOG_LEVEL_DEBUG1, rad::LOG_LEVEL_DEBUG2, rad::LOG_LEVEL_DEBUG3,
  rad::LOG_LEVEL_DEBUG4, rad::LOG_LEVEL_TRACE, rad::LOG_LEVEL_UNKNOWN = -1, rad::LOG_LEVEL_ERROR = 0,
  rad::LOG_LEVEL_WARNING, rad::LOG_LEVEL_STATE, rad::LOG_LEVEL_EVENT, rad::LOG_LEVEL_GUARD,
  rad::LOG_LEVEL_ACTION, rad::LOG_LEVEL_INFO, rad::LOG_LEVEL_DEBUG, rad::LOG_LEVEL_DEBUG1,
  rad::LOG_LEVEL_DEBUG2, rad::LOG_LEVEL_DEBUG3, rad::LOG_LEVEL_DEBUG4, rad::LOG_LEVEL_TRACE,
  rad::LOG_LEVEL_UNKNOWN = -1, rad::LOG_LEVEL_ERROR = 0, rad::LOG_LEVEL_WARNING, rad::LOG_LEVEL_STATE,
  rad::LOG_LEVEL_EVENT, rad::LOG_LEVEL_GUARD, rad::LOG_LEVEL_ACTION, rad::LOG_LEVEL_INFO,
  rad::LOG_LEVEL_DEBUG, rad::LOG_LEVEL_DEBUG1, rad::LOG_LEVEL_DEBUG2, rad::LOG_LEVEL_DEBUG3,
  rad::LOG_LEVEL_DEBUG4, rad::LOG_LEVEL_TRACE
}
 

Functions

void rad::LogTraceFunction (const LogLevel level, const char *fileName, const char *funcName, const int lineNum)
 
void rad::LogFunction (const LogLevel level, const char *funcName, const std::string &a)
 
void rad::LogStateFunction (const std::string &a, const std::string &b)
 
void rad::LogEventFunction (const std::string &a)
 

Variables

const int rad::LOG_MAX_LEVEL = LOG_LEVEL_TRACE
 
const int rad::LOG_MAX_LEN = 2048
 
const int rad::LOG_TIMESTAMP_MAXLEN = 100
 

Detailed Description

Logger class.

Author

Macro Definition Documentation

#define RAD_LOG (   level)
Value:
if (level > RAD_LOG_MAX_LEVEL) \
; \
else if (level > rad::Logger::ReportingLevel()) \
; \
else if (rad::Logger::IsEnabled() == false) \
; \
else \
rad::Logger().Get(level) << __FILE__ << ":" << __LINE__ << " "
static LogLevel & ReportingLevel()
Definition: Logger.hpp:145
static bool IsEnabled()
Definition: Logger.hpp:160
#define RAD_LOG_MAX_LEVEL
Definition: Logger.hpp:245
#define RAD_LOG_ACTION (   a)    rad::LogFunction(rad::LOG_LEVEL_ACTION, __FUNCTION__, a)
#define RAD_LOG_DEBUG ( )
Value:
; \
else \
rad::Logger().Get(rad::LOG_LEVEL_DEBUG) << __FILE__ << ":" << __LINE__ << " "
static LogLevel & ReportingLevel()
Definition: Logger.hpp:145
Definition: Logger.hpp:89
static bool IsEnabled()
Definition: Logger.hpp:160
#define RAD_LOG_DEBUG1 ( )
Value:
; \
else \
rad::Logger().Get(rad::LOG_LEVEL_DEBUG1) << __FILE__ << ":" << __LINE__ << " "
static LogLevel & ReportingLevel()
Definition: Logger.hpp:145
Definition: Logger.hpp:90
static bool IsEnabled()
Definition: Logger.hpp:160
#define RAD_LOG_DEBUG2 ( )
Value:
; \
else \
rad::Logger().Get(rad::LOG_LEVEL_DEBUG2) << __FILE__ << ":" << __LINE__ << " "
static LogLevel & ReportingLevel()
Definition: Logger.hpp:145
Definition: Logger.hpp:91
static bool IsEnabled()
Definition: Logger.hpp:160
#define RAD_LOG_DEBUG3 ( )
Value:
; \
else \
rad::Logger().Get(rad::LOG_LEVEL_DEBUG3) << __FILE__ << ":" << __LINE__ << " "
static LogLevel & ReportingLevel()
Definition: Logger.hpp:145
static bool IsEnabled()
Definition: Logger.hpp:160
Definition: Logger.hpp:92
#define RAD_LOG_DEBUG4 ( )
Value:
; \
else \
rad::Logger().Get(rad::LOG_LEVEL_DEBUG4) << __FILE__ << ":" << __LINE__ << " "
static LogLevel & ReportingLevel()
Definition: Logger.hpp:145
static bool IsEnabled()
Definition: Logger.hpp:160
Definition: Logger.hpp:93
#define RAD_LOG_ERROR ( )
Value:
; \
else \
rad::Logger().Get(rad::LOG_LEVEL_ERROR) << __FILE__ << ":" << __LINE__ << " "
Definition: Logger.hpp:82
static LogLevel & ReportingLevel()
Definition: Logger.hpp:145
static bool IsEnabled()
Definition: Logger.hpp:160
#define RAD_LOG_EVENT (   a)    rad::LogEventFunction(a)
#define RAD_LOG_GUARD (   a)    rad::LogFunction(rad::LOG_LEVEL_GUARD, __FUNCTION__, a)
#define RAD_LOG_INFO ( )
Value:
; \
else \
rad::Logger().Get(rad::LOG_LEVEL_INFO)
Definition: Logger.hpp:88
static LogLevel & ReportingLevel()
Definition: Logger.hpp:145
static bool IsEnabled()
Definition: Logger.hpp:160
#define RAD_LOG_MAX_LEVEL   rad::LOG_LEVEL_TRACE
#define RAD_LOG_SETLEVEL (   levelName)    rad::Logger::ReportingLevel() = rad::Logger::LevelFromString(levelName)
#define RAD_LOG_SETMODNAME (   name)    rad::Logger::ModuleName() = name
#define RAD_LOG_SETPROCNAME (   name)    rad::Logger::ProcName() = name
#define RAD_LOG_STATE (   a,
 
)    rad::LogStateFunction(a, b)
#define RAD_LOG_TO_CONSOLE (   isEnabled)    rad::Logger::EnableConsole() = isEnabled
#define RAD_LOG_TO_LOGMON (   isEnabled)    rad::Logger::EnableLogMon() = isEnabled
#define RAD_LOG_TRACE ( )    rad::LogTraceFunction(rad::LOG_LEVEL_TRACE, __FILE__, __FUNCTION__, __LINE__)
#define RAD_LOG_WARNING ( )
Value:
; \
else \
rad::Logger().Get(rad::LOG_LEVEL_WARNING) << __FILE__ << ":" << __LINE__ << " "
static LogLevel & ReportingLevel()
Definition: Logger.hpp:145
static bool IsEnabled()
Definition: Logger.hpp:160
Definition: Logger.hpp:83