Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
icl_core::logging Namespace Reference

Flexible, powerful, configurable logging framework. More...

Namespaces

namespace  hidden
 

Internal namespace for implementation details.


namespace  hidden_posix
 

Internal implementation details for POSIX systems.


Classes

class  FileLogOutput
class  LifeCycle
class  LoggingManager
 Manages the logging framework. More...
class  LogOutputStream
 This is an output stream class for log messages. More...
class  LogStream
 Implements a thread-safe logging framework. More...
class  ScopedSemaphore
 Manages locking and unlocking of a mutes. More...
class  ScopedTimer
class  Semaphore
 Implements a platform independent mutex. More...
class  SemaphoreImpl
class  SemaphoreImplDarwin
class  SemaphoreImplLxrt33
class  SemaphoreImplLxrt35
class  SemaphoreImplLxrt38
class  SemaphoreImplPosix
class  SemaphoreImplWin32
class  SQLiteLogDb
class  SQLiteLogOutput
class  StdErrorLogOutput
class  StdLogOutput
class  STMMultiThreadedWithSemaphore
 Semaphore-based thread-safe singleton threading model. More...
class  Thread
class  ThreadImpl
class  ThreadImplLxrt33
class  ThreadImplLxrt35
class  ThreadImplLxrt38
class  ThreadImplPosix
class  ThreadImplWin32
class  ThreadStream
 Implements the actual logging for an individual thread. More...
class  UdpLogOutput

Typedefs

typedef ICL_CORE_VC_DEPRECATE
FileLogOutput tFileLogOutput 
ICL_CORE_GCC_DEPRECATE
typedef LogOutputStream *(* LogOutputStreamFactory )(const icl_core::String &name, const icl_core::String &config_prefix, LogLevel log_level)
typedef LogStream *(* LogStreamFactory )()
typedef std::set< LogStream * > LogStreamSet

Enumerations

enum  LogLevel {
  eLL_TRACE, eLL_DEBUG, eLL_INFO, eLL_WARNING,
  eLL_ERROR, eLL_MUTE
}

Functions

boost::shared_ptr< LifeCycleautoStart (int &argc, char *argv[])
ThreadStreamendl (ThreadStream &stream)
ThreadStreamflush (ThreadStream &stream)
bool initialize (int &argc, char *argv[], bool remove_read_arguments)
bool initialize (int &argc, char *argv[], icl_core::config::Getopt::CommandLineCleaning cleanup, icl_core::config::Getopt::ParameterRegistrationCheck registration_check)
void initialize ()
const char * logLevelDescription (LogLevel log_level)
ThreadStreamoperator<< (ThreadStream &stream, const icl_core::TimeStamp &time_stamp)
ThreadStreamoperator<< (ThreadStream &stream, const icl_core::TimeSpan &time_span)
ThreadStreamoperator<< (ThreadStream &stream, uint8_t value)
ThreadStreamoperator<< (ThreadStream &stream, uint16_t value)
ThreadStreamoperator<< (ThreadStream &stream, uint32_t value)
ThreadStreamoperator<< (ThreadStream &stream, unsigned long value)
ThreadStreamoperator<< (ThreadStream &stream, uint64_t value)
ThreadStreamoperator<< (ThreadStream &stream, int8_t value)
ThreadStreamoperator<< (ThreadStream &stream, int16_t value)
ThreadStreamoperator<< (ThreadStream &stream, int32_t value)
ThreadStreamoperator<< (ThreadStream &stream, long value)
ThreadStreamoperator<< (ThreadStream &stream, int64_t value)
ThreadStreamoperator<< (ThreadStream &stream, const char *text)
ThreadStreamoperator<< (ThreadStream &stream, const std::string &text)
ThreadStreamoperator<< (ThreadStream &stream, double value)
ThreadStreamoperator<< (ThreadStream &stream, bool value)
ThreadStreamoperator<< (ThreadStream &stream, void *value)
ThreadStreamoperator<< (ThreadStream &stream, const ThreadId &thread_id)
void setLogLevel (icl_core::logging::LogLevel log_level)
 Set a global log level for all streams.
void shutdown ()
bool stringToLogLevel (const std::string &log_level_text, LogLevel &log_level)

Variables

const LogLevel cDEFAULT_LOG_LEVEL = eLL_INFO
 The log level which is used initially.
const size_t cMAX_DESCRIPTION_LENGTH = 1024
const size_t cMAX_IDENTIFIER_LENGTH = 256
const char * log_level_descriptions []

Detailed Description

Flexible, powerful, configurable logging framework.


Typedef Documentation

Definition at line 32 of file tFileLogOutput.h.

typedef LogOutputStream*(* icl_core::logging::LogOutputStreamFactory)(const icl_core::String &name, const icl_core::String &config_prefix, LogLevel log_level)

Definition at line 48 of file LoggingManager.h.

Definition at line 51 of file LoggingManager.h.

Definition at line 49 of file LogStream.h.


Enumeration Type Documentation

Enumerates the available log levels.

The log level eLL_MUTE should not be used for log messages. It is intended to "mute" a log or log output stream (i.e. prevent that log messages are output).

Enumerator:
eLL_TRACE 
eLL_DEBUG 
eLL_INFO 
eLL_WARNING 
eLL_ERROR 
eLL_MUTE 

Definition at line 49 of file LogLevel.h.


Function Documentation

boost::shared_ptr< LifeCycle > ICL_CORE_LOGGING_IMPORT_EXPORT icl_core::logging::autoStart ( int &  argc,
char *  argv[] 
)

Definition at line 127 of file icl_core_logging/Logging.cpp.

ThreadStream& icl_core::logging::endl ( ThreadStream &  stream) [inline]

Does the same as flush() but writes a newline first.

Definition at line 249 of file ThreadStream.h.

ThreadStream& icl_core::logging::flush ( ThreadStream &  stream) [inline]

This function (or better a pointer to this function) can be streamed into a ThreadStream in order to force the stream to write out its current buffer.

Definition at line 241 of file ThreadStream.h.

bool ICL_CORE_LOGGING_IMPORT_EXPORT icl_core::logging::initialize ( int &  argc,
char *  argv[],
bool  remove_read_arguments 
)

Convenience function to initialize the logging framework.

Also initializes the configuration framework.

Definition at line 100 of file icl_core_logging/Logging.cpp.

Convenience function to initialize the logging framework.

Also initializes the configuration framework.

Definition at line 108 of file icl_core_logging/Logging.cpp.

Convenience function to initialize the logging framework.

Use this version if you already have initialized the configuration framework.

Definition at line 117 of file icl_core_logging/Logging.cpp.

Returns the textual description of the specified log level.

Parameters:
log_levelThe log level to be transformed into a string.
Returns:
A textual description of the specified log level or the empty string if the log level was out of range.

Definition at line 41 of file LogLevel.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
const icl_core::TimeStamp time_stamp 
)

Definition at line 31 of file icl_core_logging/Logging.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
const icl_core::TimeSpan time_span 
)

Definition at line 56 of file icl_core_logging/Logging.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
uint8_t  value 
)

Definition at line 162 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
uint16_t  value 
)

Definition at line 170 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
uint32_t  value 
)

Definition at line 178 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
unsigned long  value 
)

Definition at line 187 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
uint64_t  value 
)

Definition at line 196 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
int8_t  value 
)

Definition at line 204 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
int16_t  value 
)

Definition at line 212 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
int32_t  value 
)

Definition at line 220 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
long  value 
)

Definition at line 229 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
int64_t  value 
)

Definition at line 238 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
const char *  text 
)

Definition at line 256 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
const std::string &  text 
)

Definition at line 262 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
double  value 
)

Definition at line 268 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
bool  value 
)

Definition at line 276 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
void *  value 
)

Definition at line 289 of file ThreadStream.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT ThreadStream & icl_core::logging::operator<< ( ThreadStream &  stream,
const ThreadId &  thread_id 
)

Definition at line 298 of file ThreadStream.cpp.

Set a global log level for all streams.

Definition at line 132 of file icl_core_logging/Logging.cpp.

Convenience function to shutdown the logging framework.

Definition at line 122 of file icl_core_logging/Logging.cpp.

ICL_CORE_LOGGING_IMPORT_EXPORT bool icl_core::logging::stringToLogLevel ( const icl_core::String log_level_text,
LogLevel &  log_level 
)

Tries to convert a string into a log level.

Parameters:
log_level_textInput parameter containing the text to be converted.
log_levelOutput parameter to which the log level is written on success. If the conversion is not possible then this parameter is not altered.
Returns:
true if the conversion was successful, false if the specified text did not match any defined log level.

Definition at line 53 of file LogLevel.cpp.


Variable Documentation

The log level which is used initially.

Definition at line 60 of file LogLevel.h.

The buffer size for filenames and object descriptions.

Definition at line 47 of file Constants.h.

The buffer size for identifiers (log stream names, class names and function names).

Definition at line 42 of file Constants.h.

Initial value:
{
  "Trace",
  "Debug",
  "Info",
  "Warning",
  "Error",
  "Mute",
  NULL
}

Definition at line 30 of file LogLevel.cpp.



fzi_icl_core
Author(s):
autogenerated on Thu Jun 6 2019 20:22:26