RSC  0.16.0
rsc::logging::ConsoleLogger Class Reference

A simple logger that uses cout and cerr for logging. More...

#include <ConsoleLogger.h>

Inheritance diagram for rsc::logging::ConsoleLogger:
Inheritance graph
Collaboration diagram for rsc::logging::ConsoleLogger:
Collaboration graph

Public Member Functions

 ConsoleLogger (const std::string &name)
 Creates a new logger with the given name and level INFO. More...
 
 ConsoleLogger (const std::string &name, const Level &level)
 
virtual ~ConsoleLogger ()
 
Level getLevel () const
 Returns the currently defined level of the logger. More...
 
void setLevel (const Level &level)
 
std::string getName () const
 Returns the hierarchical name of the logger. More...
 
void setName (const std::string &name)
 Sets the name of the logger. More...
 
void log (const Level &level, const std::string &msg)
 
- Public Member Functions inherited from rsc::logging::Logger
virtual ~Logger ()
 
virtual void log (const Level &level, const std::string &msg)=0
 Logs a message with the given level if it is enabled. More...
 
virtual void setLevel (const Level &level)=0
 Defines the level of the logger. More...
 
virtual void trace (const std::string &msg)
 Logs a message with trace logging level if this level is enabled. More...
 
virtual void debug (const std::string &msg)
 Logs a message with debug logging level if this level is enabled. More...
 
virtual void info (const std::string &msg)
 Logs a message with info logging level if this level is enabled. More...
 
virtual void warn (const std::string &msg)
 Logs a message with warn logging level if this level is enabled. More...
 
virtual void error (const std::string &msg)
 Logs a message with error logging level if this level is enabled. More...
 
virtual void fatal (const std::string &msg)
 Logs a message with fatal logging level if this level is enabled. More...
 
virtual bool isTraceEnabled () const
 
virtual bool isDebugEnabled () const
 
virtual bool isInfoEnabled () const
 
virtual bool isWarnEnabled () const
 
virtual bool isErrorEnabled () const
 
virtual bool isFatalEnabled () const
 
virtual bool isEnabledFor (const Level &level) const
 

Private Member Functions

std::ostream & printHeader (std::ostream &stream, const Level &level)
 Prints a generic header for this logger to the stream. More...
 

Private Attributes

std::string name
 
Level level
 
boost::recursive_mutex mutex
 

Additional Inherited Members

- Public Types inherited from rsc::logging::Logger
enum  Level {
  LEVEL_ALL = 0x11111111, LEVEL_TRACE = 60, LEVEL_DEBUG = 50, LEVEL_INFO = 40,
  LEVEL_WARN = 30, LEVEL_ERROR = 20, LEVEL_FATAL = 10, LEVEL_OFF = 0
}
 Possible logging levels. More...
 
- Static Public Member Functions inherited from rsc::logging::Logger
static LoggerPtr getLogger (const std::string &name)
 Returns a logger for the given name. More...
 

Detailed Description

A simple logger that uses cout and cerr for logging.

Author
jwienke

Definition at line 42 of file ConsoleLogger.h.

Constructor & Destructor Documentation

rsc::logging::ConsoleLogger::ConsoleLogger ( const std::string &  name)

Creates a new logger with the given name and level INFO.

Parameters
namename of the logger

Definition at line 38 of file ConsoleLogger.cpp.

References level, and name.

rsc::logging::ConsoleLogger::ConsoleLogger ( const std::string &  name,
const Level level 
)
rsc::logging::ConsoleLogger::~ConsoleLogger ( )
virtual

Definition at line 47 of file ConsoleLogger.cpp.

Member Function Documentation

Logger::Level rsc::logging::ConsoleLogger::getLevel ( ) const
virtual

Returns the currently defined level of the logger.

Returns
current level of the logger

Implements rsc::logging::Logger.

Definition at line 50 of file ConsoleLogger.cpp.

References level, and mutex.

string rsc::logging::ConsoleLogger::getName ( ) const
virtual

Returns the hierarchical name of the logger.

Returns
name of the logger

Implements rsc::logging::Logger.

Definition at line 60 of file ConsoleLogger.cpp.

References mutex, and name.

void rsc::logging::ConsoleLogger::log ( const Level level,
const std::string &  msg 
)

Definition at line 75 of file ConsoleLogger.cpp.

References rsc::logging::Logger::isEnabledFor(), mutex, and printHeader().

Here is the call graph for this function:

ostream & rsc::logging::ConsoleLogger::printHeader ( std::ostream &  stream,
const Level level 
)
private

Prints a generic header for this logger to the stream.

Acquire the lock before calling this method.

Parameters
streamstream to print on
levelthe level of the header to generate
Returns
the stream passed in

Definition at line 70 of file ConsoleLogger.cpp.

References rsc::misc::currentTimeMillis().

Referenced by log().

Here is the call graph for this function:

Here is the caller graph for this function:

void rsc::logging::ConsoleLogger::setLevel ( const Level level)

Definition at line 55 of file ConsoleLogger.cpp.

References level, and mutex.

void rsc::logging::ConsoleLogger::setName ( const std::string &  name)
virtual

Sets the name of the logger.

Parameters
namenew name

Implements rsc::logging::Logger.

Definition at line 65 of file ConsoleLogger.cpp.

References mutex, and name.

Member Data Documentation

Level rsc::logging::ConsoleLogger::level
private

Definition at line 74 of file ConsoleLogger.h.

Referenced by ConsoleLogger(), getLevel(), and setLevel().

boost::recursive_mutex rsc::logging::ConsoleLogger::mutex
mutableprivate

Definition at line 76 of file ConsoleLogger.h.

Referenced by getLevel(), getName(), log(), setLevel(), and setName().

std::string rsc::logging::ConsoleLogger::name
private

Definition at line 73 of file ConsoleLogger.h.

Referenced by ConsoleLogger(), getName(), and setName().


The documentation for this class was generated from the following files: