OpenRTM-aist  1.2.1
Classes | Namespaces | Macros | Typedefs
SystemLogger.h File Reference

RT component logger class. More...

#include <rtm/config_rtc.h>
#include <coil/Time.h>
#include <coil/ClockManager.h>
#include <coil/Logger.h>
#include <coil/Mutex.h>
#include <coil/Guard.h>
#include <coil/stringutil.h>
Include dependency graph for SystemLogger.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  RTC::Logger
 Logger class. More...
 

Namespaces

 RTC
 RT-Component.
 

Macros

#define RTC_LOG(LV, fmt)
 General-purpose log output macro. More...
 
#define RTC_LOG_STR(LV, str)
 
#define RTC_FATAL(fmt)   RTC_LOG(::RTC::Logger::RTL_FATAL, fmt)
 Error log output macro. More...
 
#define RTC_FATAL_STR(str)   RTC_LOG_STR(::RTC::Logger::RTL_FATAL, str)
 
#define RTC_ERROR(fmt)   RTC_LOG(::RTC::Logger::RTL_ERROR, fmt)
 Error log output macro. More...
 
#define RTC_ERROR_STR(str)   RTC_LOG_STR(::RTC::Logger::RTL_ERROR, str)
 
#define RTC_WARN(fmt)   RTC_LOG(::RTC::Logger::RTL_WARN, fmt)
 Warning log output macro. More...
 
#define RTC_WARN_STR(str)   RTC_LOG_STR(::RTC::Logger::RTL_WARN, str)
 
#define RTC_INFO(fmt)   RTC_LOG(::RTC::Logger::RTL_INFO, fmt)
 Information level log output macro. More...
 
#define RTC_INFO_STR(str)   RTC_LOG_STR(::RTC::Logger::RTL_INFO, str)
 
#define RTC_DEBUG(fmt)   RTC_LOG(::RTC::Logger::RTL_DEBUG, fmt)
 Debug level log output macro. More...
 
#define RTC_DEBUG_STR(str)   RTC_LOG_STR(::RTC::Logger::RTL_DEBUG, str)
 
#define RTC_TRACE(fmt)   RTC_LOG(::RTC::Logger::RTL_TRACE, fmt)
 Trace level log output macro. More...
 
#define RTC_TRACE_STR(str)   RTC_LOG_STR(::RTC::Logger::RTL_TRACE, str)
 
#define RTC_VERBOSE(fmt)   RTC_LOG(::RTC::Logger::RTL_VERBOSE, fmt)
 Verbose level log output macro. More...
 
#define RTC_VERBOSE_STR(str)   RTC_LOG_STR(::RTC::Logger::RTL_VERBOSE, str)
 
#define RTC_PARANOID(fmt)   RTC_LOG(::RTC::Logger::RTL_PARANOID, fmt)
 Paranoid level log output macro. More...
 
#define RTC_PARANOID_STR(str)   RTC_LOG_STR(::RTC::Logger::RTL_PARANOID, str)
 

Typedefs

typedef ::coil::LogStreamBuffer RTC::LogStreamBuf
 
typedef ::coil::LogStream RTC::LogStream
 

Detailed Description

RT component logger class.

Date
Date
2007-07-20 16:10:32
Author
Noriaki Ando n-and.nosp@m.o@ai.nosp@m.st.go.nosp@m..jp

Copyright (C) 2003-2008 Task-intelligence Research Group, Intelligent Systems Research Institute, National Institute of Advanced Industrial Science and Technology (AIST), Japan All rights reserved.

$Id$

Macro Definition Documentation

#define RTC_DEBUG (   fmt)    RTC_LOG(::RTC::Logger::RTL_DEBUG, fmt)

Debug level log output macro.

If log levels are ( DEBUG, TRACE, VERBOSE, PARANOID ), message will be output to log.

Referenced by RTC::InPort< DataType >::isEmpty(), RTC::InPort< DataType >::isNew(), RTC::PublisherPeriodic::onSenderError(), RTC::InPort< DataType >::read(), and RTC::OutPort< DataType >::write().

#define RTC_DEBUG_STR (   str)    RTC_LOG_STR(::RTC::Logger::RTL_DEBUG, str)
#define RTC_ERROR (   fmt)    RTC_LOG(::RTC::Logger::RTL_ERROR, fmt)

Error log output macro.

This is a log output macro of the error level. If log levels are ERROR, WARN, INFO, DEBUG, TRACE, VERBOSE and PARANOID, message will be output to log.

Referenced by RTC::InPort< DataType >::read().

#define RTC_ERROR_STR (   str)    RTC_LOG_STR(::RTC::Logger::RTL_ERROR, str)
#define RTC_FATAL (   fmt)    RTC_LOG(::RTC::Logger::RTL_FATAL, fmt)

Error log output macro.

This is a log output macro of the error level. If log levels are FATAL, ERROR, WARN, INFO, NORMAL, DEBUG, TRACE, VERBOSE or PARANOID, message will be output to log.

#define RTC_FATAL_STR (   str)    RTC_LOG_STR(::RTC::Logger::RTL_FATAL, str)
#define RTC_INFO (   fmt)    RTC_LOG(::RTC::Logger::RTL_INFO, fmt)

Information level log output macro.

If log levels are ( INFO, DEBUG, TRACE, VERBOSE, PARANOID ), message will be output to log.

#define RTC_INFO_STR (   str)    RTC_LOG_STR(::RTC::Logger::RTL_INFO, str)
#define RTC_LOG (   LV,
  fmt 
)
Value:
if (rtclog.isValid(LV)) \
{ \
std::string str = ::coil::sprintf fmt; \
rtclog.lock(); \
rtclog.level(LV) << str << std::endl; \
rtclog.unlock(); \
}
std::string sprintf(char const *__restrict fmt,...)
Convert it into a format given with an argumen.

General-purpose log output macro.

Lock log level and output format string as arguments.

#define RTC_LOG_STR (   LV,
  str 
)
Value:
if (rtclog.isValid(LV)) \
{ \
rtclog.lock(); \
rtclog.level(LV) << str << std::endl; \
rtclog.unlock(); \
}
#define RTC_PARANOID (   fmt)    RTC_LOG(::RTC::Logger::RTL_PARANOID, fmt)

Paranoid level log output macro.

If log levels are ( PARANOID ), message will be output to log.

Referenced by RTC::InPortConnector::getDirectData(), and RTC::OutPortConnector::write().

#define RTC_PARANOID_STR (   str)    RTC_LOG_STR(::RTC::Logger::RTL_PARANOID, str)
#define RTC_TRACE (   fmt)    RTC_LOG(::RTC::Logger::RTL_TRACE, fmt)
#define RTC_TRACE_STR (   str)    RTC_LOG_STR(::RTC::Logger::RTL_TRACE, str)
#define RTC_VERBOSE (   fmt)    RTC_LOG(::RTC::Logger::RTL_VERBOSE, fmt)

Verbose level log output macro.

If log levels are ( VERBOSE, PARANOID ), message will be output to log.

#define RTC_VERBOSE_STR (   str)    RTC_LOG_STR(::RTC::Logger::RTL_VERBOSE, str)
#define RTC_WARN (   fmt)    RTC_LOG(::RTC::Logger::RTL_WARN, fmt)

Warning log output macro.

If log levels are ( WARN, INFO, DEBUG, TRACE, VERBOSE, PARANOID ), message will be output to log.

Referenced by RTC::InPort< DataType >::read(), and RTC::OutPort< DataType >::write().

#define RTC_WARN_STR (   str)    RTC_LOG_STR(::RTC::Logger::RTL_WARN, str)