1#ifndef __OPENTREP_SVC_LOGGER_HPP
2#define __OPENTREP_SVC_LOGGER_HPP
12#include <boost/date_time.hpp>
17#define OPENTREP_LOG_CORE(iLevel, iToBeLogged) \
18 { std::ostringstream ostr; ostr << iToBeLogged; \
19 OPENTREP::Logger::instance().log (iLevel, __LINE__, __FILE__, ostr.str()); }
21#define OPENTREP_LOG_CRITICAL(iToBeLogged) \
22 OPENTREP_LOG_CORE (OPENTREP::LOG::CRITICAL, iToBeLogged)
24#define OPENTREP_LOG_ERROR(iToBeLogged) \
25 OPENTREP_LOG_CORE (OPENTREP::LOG::ERROR, iToBeLogged)
27#define OPENTREP_LOG_NOTIFICATION(iToBeLogged) \
28 OPENTREP_LOG_CORE (OPENTREP::LOG::NOTIFICATION, iToBeLogged)
30#define OPENTREP_LOG_WARNING(iToBeLogged) \
31 OPENTREP_LOG_CORE (OPENTREP::LOG::WARNING, iToBeLogged)
33#define OPENTREP_LOG_DEBUG(iToBeLogged) \
34 OPENTREP_LOG_CORE (OPENTREP::LOG::DEBUG, iToBeLogged)
36#define OPENTREP_LOG_VERBOSE(iToBeLogged) \
37 OPENTREP_LOG_CORE (OPENTREP::LOG::VERBOSE, iToBeLogged)
59 const std::string& iFileName,
const T& iToBeLogged) {
60 if (iLevel <= _level) {
61 assert (_logStream != NULL);
64 boost::posix_time::ptime lTimeUTC =
65 boost::posix_time::second_clock::universal_time();
68 *_logStream <<
"[" << lTimeUTC <<
"][" << iFileName <<
"#"
69 << iLineNumber <<
"]:" << iToBeLogged << std::endl;
87 std::ostream& ioLogStream);
117 std::ostream* _logStream;
static Logger & instance()
std::ostream & getLogStream()
LOG::EN_LogLevel getLogLevel()
friend class FacSupervisor
void log(const LOG::EN_LogLevel iLevel, const int iLineNumber, const std::string &iFileName, const T &iToBeLogged)
void setLogParameters(const LOG::EN_LogLevel iLogLevel, std::ostream &ioLogStream)