9 #ifndef CORE_PROTOCOL_OPEN62541_LOGGING_H_
10 #define CORE_PROTOCOL_OPEN62541_LOGGING_H_
17 #include <log4cplus/logger.h>
18 #include <log4cplus/loggingmacros.h>
19 #include <log4cplus/logger.h>
21 #include <open62541.h>
24 static constexpr
const char* LOGGER_NAME =
"open62541";
27 static void CustomOpen62541Log(
28 void *logContext, UA_LogLevel level, UA_LogCategory category,
const char *msg, va_list args) {
31 char buffer[1024] = {};
32 auto bufferSize =
sizeof(buffer);
33 auto retVal = vsnprintf(buffer, bufferSize, msg, args);
35 std::cerr <<
"Logging message to big for the allocated buffer\n";
39 if (level == UA_LOGLEVEL_TRACE) {
40 LOG4CPLUS_TRACE(logger, buffer);
41 }
else if (level == UA_LOGLEVEL_DEBUG) {
42 LOG4CPLUS_DEBUG(logger, buffer);
43 }
else if (level == UA_LOGLEVEL_INFO) {
44 LOG4CPLUS_INFO(logger, buffer);
45 }
else if (level == UA_LOGLEVEL_WARNING) {
46 LOG4CPLUS_WARN(logger, buffer);
47 }
else if (level == UA_LOGLEVEL_ERROR) {
48 LOG4CPLUS_ERROR(logger, buffer);
49 }
else if (level == UA_LOGLEVEL_FATAL) {
50 LOG4CPLUS_FATAL(logger, buffer);
54 static void CustomOpen62541LogClear(
void *logContext) {}
57 { CustomOpen62541Log,
nullptr, CustomOpen62541LogClear };
const UA_Logger CustomLogger
Definition: logging.hpp:56
log4cplus::Logger & Logger()
Definition: defines.cpp:13
Definition: iDataChangeHandler.hpp:25