#include <stdint.h>
#include <stdio.h>
#include <stdarg.h>
+#include <stdbool.h>
#include "logger_types.h"
#ifdef __ANDROID__
INFO = DLOG_INFO,
WARNING = DLOG_WARN,
ERROR = DLOG_ERROR,
- FATAL = DLOG_ERROR
+ FATAL = DLOG_ERROR,
+ DEBUG_LITE = DLOG_DEBUG,
+ INFO_LITE = DLOG_INFO,
+ INFO_PRIVATE = DLOG_INFO,
} LogLevel;
#else
INFO,
WARNING,
ERROR,
- FATAL
+ FATAL,
+ DEBUG_LITE, // The DEBUG log for Lite device
+ INFO_LITE, // The INFO log for Lite device
+ INFO_PRIVATE, // The log contained private data
} LogLevel;
+
#endif
+/**
+ * Set log level and privacy log to print.
+ *
+ * @param level - log level.
+ * @param hidePrivateLogEntries - Hide Private Log.
+ */
+void OCSetLogLevel(LogLevel level, bool hidePrivateLogEntries);
+
#ifdef __TIZEN__
/**
* Output the contents of the specified buffer (in hex) with the specified priority level.
#include "string.h"
#include "logger_types.h"
+// log level
+LogLevel g_level = DEBUG;
+// privacy log
+bool g_hidePrivateLogEntries = false;
+
#ifndef __TIZEN__
static oc_log_ctx_t *logCtx = 0;
#endif
OCLogv(level, tag, "%s", lineBuffer);
}
}
+
+void OCSetLogLevel(LogLevel level, bool hidePrivateLogEntries)
+{
+ g_level = level;
+ g_hidePrivateLogEntries = hidePrivateLogEntries;
+}
+
#ifndef __TIZEN__
void OCLogConfig(oc_log_ctx_t *ctx)
{
if (!format || !tag) {
return;
}
+
+ if (g_level > level && ERROR != level && WARNING != level && FATAL != level)
+ {
+ return;
+ }
+
+ if (true == g_hidePrivateLogEntries && INFO_PRIVATE == level)
+ {
+ return;
+ }
+
char buffer[MAX_LOG_V_BUFFER_SIZE] = {0};
va_list args;
va_start(args, format);
return;
}
+ if (g_level > level && ERROR != level && WARNING != level && FATAL != level)
+ {
+ return;
+ }
+
+ if (true == g_hidePrivateLogEntries && INFO_PRIVATE == level)
+ {
+ return;
+ }
+
+ switch(level)
+ {
+ case DEBUG_LITE:
+ level = DEBUG;
+ break;
+ case INFO_LITE:
+ level = INFO;
+ break;
+ case INFO_PRIVATE:
+ level = INFO;
+ break;
+ default:
+ break;
+ }
+
#ifdef __ANDROID__
#ifdef ADB_SHELL