loggingMACROS.h
Go to the documentation of this file.00001
#ifndef logging_macros_H
00002
#define logging_macros_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
#ifndef __cplusplus
00029
#error This is a C++ include file and cannot be used from plain C
00030
#endif
00031
00032
#include "loggingLogger.h"
00033
#include "loggingLogTrace.h"
00034
#include "loggingGetLogger.h"
00035
#include <iostream>
00036
#include <acsutilTimeStamp.h>
00037
00047 #define LOG(priority, routine, text) \
00048
if (getLogger()!=0) \
00049
{ \
00050
getLogger()->log(priority, text, __FILE__, __LINE__, routine); \
00051
} \
00052
else \
00053
{ \
00054
std::cerr << "SEVERE LOGGING ERROR - getLogger() returned NULL: file="; \
00055
std::cerr << __FILE__ << ", line=" << __LINE__ << std::endl; \
00056
}
00057
00058
00069 #define LOG_FULL(logPriority, logRoutine, logMessage, logAudience, logArray, logAntenna) \
00070
if (getLogger()!=0) \
00071
{ \
00072
Logging::BaseLog::LogRecord lr; \
00073
lr.priority = Logging::ace2acsPriority(logPriority); \
00074
lr.message = logMessage; \
00075
lr.file = __FILE__; \
00076
lr.line = __LINE__; \
00077
lr.method = logRoutine; \
00078
lr.timeStamp = getTimeStamp(); \
00079
LoggingProxy::audience(logAudience); \
00080
LoggingProxy::array(logArray); \
00081
LoggingProxy::antenna(logAntenna); \
00082
LoggingProxy::Flags(LM_SOURCE_INFO | LM_RUNTIME_CONTEXT); \
00083
getLogger()->log(lr); \
00084
} \
00085
else \
00086
{ \
00087
std::cerr << "SEVERE LOGGING ERROR - getLogger() returned NULL: file="; \
00088
std::cerr << __FILE__ << ", line=" << __LINE__ << std::endl; \
00089
}
00090
00100 #define LOG_WITH_ANTENNA_CONTEXT(logPriority, logRoutine, logMessage, logArray, logAntenna) \
00101
if (getLogger()!=0) \
00102
{ \
00103
Logging::BaseLog::LogRecord lr; \
00104
lr.priority = Logging::ace2acsPriority(logPriority); \
00105
lr.message = logMessage; \
00106
lr.file = __FILE__; \
00107
lr.line = __LINE__; \
00108
lr.method = logRoutine; \
00109
lr.timeStamp = getTimeStamp(); \
00110
LoggingProxy::array(logArray); \
00111
LoggingProxy::antenna(logAntenna); \
00112
LoggingProxy::Flags(LM_SOURCE_INFO | LM_RUNTIME_CONTEXT); \
00113
getLogger()->log(lr); \
00114
} \
00115
else \
00116
{ \
00117
std::cerr << "SEVERE LOGGING ERROR - getLogger() returned NULL: file="; \
00118
std::cerr << __FILE__ << ", line=" << __LINE__ << std::endl; \
00119
}
00120
00129 #define LOG_TO_AUDIENCE(logPriority, logRoutine, logMessage, logAudience) \
00130
if (getLogger()!=0) \
00131
{ \
00132
Logging::BaseLog::LogRecord lr; \
00133
lr.priority = Logging::ace2acsPriority(logPriority); \
00134
lr.message = logMessage; \
00135
lr.file = __FILE__; \
00136
lr.line = __LINE__; \
00137
lr.method = logRoutine; \
00138
lr.timeStamp = getTimeStamp(); \
00139
LoggingProxy::audience(logAudience); \
00140
LoggingProxy::Flags(LM_SOURCE_INFO | LM_RUNTIME_CONTEXT); \
00141
getLogger()->log(lr); \
00142
} \
00143
else \
00144
{ \
00145
std::cerr << "SEVERE LOGGING ERROR - getLogger() returned NULL: file="; \
00146
std::cerr << __FILE__ << ", line=" << __LINE__ << std::endl; \
00147
}
00148
00161 #define LOG_RECORD(logPriority, logMessage, logFile, logLine, logRoutine, logTime, logSource) \
00162
if (getLogger()!=0) \
00163
{ \
00164
Logging::BaseLog::LogRecord lr; \
00165
lr.priority = logPriority; \
00166
lr.message = logMessage; \
00167
lr.file = logFile; \
00168
lr.line = logLine; \
00169
lr.method = logRoutine; \
00170
lr.timeStamp = logTime; \
00171
getNamedLogger(logSource)->log(lr); \
00172
} \
00173
else \
00174
{ \
00175
std::cerr << "SEVERE LOGGING ERROR - getLogger() returned NULL: file="; \
00176
std::cerr << logFile << ", line=" << logLine << std::endl; \
00177
}
00178
00179
00191 #define LOG_GLOBAL_RECORD(logPriority, logMessage, logFile, logLine, logRoutine, logTime) \
00192
if (getLogger()!=0) \
00193
{ \
00194
Logging::BaseLog::LogRecord lr; \
00195
lr.priority = logPriority; \
00196
lr.message = logMessage; \
00197
lr.file = logFile; \
00198
lr.line = logLine; \
00199
lr.method = logRoutine; \
00200
lr.timeStamp = logTime; \
00201
getLogger()->log(lr); \
00202
} \
00203
else \
00204
{ \
00205
std::cerr << "SEVERE LOGGING ERROR - getLogger() returned NULL: file="; \
00206
std::cerr << logFile << ", line=" << logLine << std::endl; \
00207
}
00208
00209
00218 #define STATIC_LOG(priority, routine, text) \
00219
Logging::Logger::getStaticLogger()->log(priority, text, __FILE__, __LINE__, routine);
00220
00232 #define STATIC_LOG_RECORD(logPriority, logMessage, logFile, logLine, logRoutine, logTime) \
00233
{ \
00234
Logging::BaseLog::LogRecord lr; \
00235
lr.priority = logPriority; \
00236
lr.message = logMessage; \
00237
lr.file = logFile; \
00238
lr.line = logLine; \
00239
lr.method = logRoutine; \
00240
lr.timeStamp = logTime; \
00241
Logging::Logger::getStaticLogger()->log(lr); \
00242
}
00243
00250 #define AUTO_TRACE(routine) \
00251
if (getLogger()!=0) \
00252
{ \
00253
Logging::LogTrace::LogTraceSmartPtr __autoTraceLogTraceSmartPtrInstance(new Logging::LogTrace(getLogger(), routine, __FILE__, __LINE__)); \
00254
} \
00255
else \
00256
{ \
00257
std::cerr << "SEVERE LOGGING ERROR IN AUTO_TRACE - getLogger() returned NULL: routine="; \
00258
std::cerr << routine << std::endl; \
00259
}
00260
00266 #define AUTO_STATIC_TRACE(routine) \
00267
Logging::LogTrace::LogTraceSmartPtr __autoTraceLogTraceSmartPtrInstance(new Logging::LogTrace(Logging::Logger::getStaticLogger(), routine, __FILE__, __LINE__));
00268
00269
#endif
Generated on Thu Apr 30 02:30:51 2009 for ACS C++ API by
1.3.8