use dlog to print log
authorBoram Park <boram1288.park@samsung.com>
Tue, 11 Jun 2013 12:44:18 +0000 (21:44 +0900)
committerBoram Park <boram1288.park@samsung.com>
Mon, 17 Jun 2013 08:44:35 +0000 (17:44 +0900)
Change-Id: I1a3d92957eb341dd8c33c56c4f09b3d718a95ac9

configure.ac
lib/xdbg.pc.in
lib/xdbg_log.c
lib/xdbg_log.h
lib/xdbg_log_dlog.c
module/xdbg_module_evlog.c
module/xdbg_module_main.c
packaging/xorg-x11-module-xdbg.spec

index aee7bea..115ffe4 100644 (file)
@@ -49,7 +49,7 @@ AC_ARG_WITH(xorg-module-dir,
                            [moduledir="$libdir/xorg/modules"])
 
 # Checks for pkg-config packages
-PKG_CHECK_MODULES(XDBG, xorg-server x11 xdamage xext dbus-1 bigreqsproto compositeproto damageproto dmxproto dri2proto fixesproto fontsproto gestureproto inputproto kbproto randrproto recordproto renderproto resourceproto scrnsaverproto videoproto xcmiscproto xextproto xf86bigfontproto xf86dgaproto xf86driproto xf86vidmodeproto xineramaproto xproto libdrm xcomposite libdri2 xgesture xtst xrandr xi xv)
+PKG_CHECK_MODULES(XDBG, dlog xorg-server x11 xdamage xext dbus-1 bigreqsproto compositeproto damageproto dmxproto dri2proto fixesproto fontsproto gestureproto inputproto kbproto randrproto recordproto renderproto resourceproto scrnsaverproto videoproto xcmiscproto xextproto xf86bigfontproto xf86dgaproto xf86driproto xf86vidmodeproto xineramaproto xproto libdrm xcomposite libdri2 xgesture xtst xrandr xi xv)
 
 AC_SUBST([XDBG_CFLAGS])
 AC_SUBST([XDBG_LIBS])
index 926fb0e..ba168a0 100644 (file)
@@ -6,6 +6,6 @@ includedir=@includedir@
 Name: xdbg
 Description: The X debug Library
 Version: @PACKAGE_VERSION@
-Requires.private: xorg-server x11
+Requires.private: xorg-server x11 dlog
 Cflags: -I${includedir}/xdbg
 Libs: -L${libdir} -lxdbg-log
index 0f287d5..0ae68af 100644 (file)
@@ -35,7 +35,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 #include <string.h>
 #include <stdarg.h>
-
+#include <dlog.h>
 #include "xdbg_log.h"
 
 #ifndef API
@@ -98,12 +98,19 @@ _LogModule (void * handle, int logoption, const char * file, int line, const cha
         kLogWrapper (loglevel, logoption, file, line, tmpBuf, args);
     }
 
+
     /* write to file */
     if (loglevel >= XLOG_LEVEL_INFO)
     {
-        snprintf(tmpBuf, BUF_LEN, "(%s) [%s]%s", ostr[loglevel], (name)?name:"", f);
+        if (logoption & XLOG_OPTION_SECURE)
+            snprintf(tmpBuf, BUF_LEN, "(%s) > [SECURE_LOG] [%s]%s", ostr[loglevel], (name)?name:"", f);
+        else
+            snprintf(tmpBuf, BUF_LEN, "(%s) [%s]%s", ostr[loglevel], (name)?name:"", f);
+
+        if (logoption & XLOG_OPTION_XORG)
+            LogVWrite (1, tmpBuf, args);
 
-        LogVWrite (1, tmpBuf, args);
+        dLogWrapper (loglevel, logoption, file, line, tmpBuf, args);
     }
 
     /* write to terminal */
index 554b0be..f7cfaf2 100644 (file)
@@ -39,6 +39,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include <errno.h>
 #include <stdlib.h>
 #include <os.h>
+#include <dlog.h>
 
 // Masks
 #define XLOG_MASK_LOGLEVEL   0x000000FF
@@ -64,7 +65,9 @@ enum
 
 // Log Options
 #define XLOG_OPTION_KLOG        (1 << 8)
-#define XLOG_OPTION_SLOG        (1 << 9)    /* print to stderr always */
+#define XLOG_OPTION_SLOG        (1 << 9)
+#define XLOG_OPTION_XORG        (1 << 10)
+#define XLOG_OPTION_SECURE      (1 << 11)   /* print secure log */
 
 typedef enum
 {
@@ -77,13 +80,15 @@ int   xDbgLogSetLevel    (unsigned int module, int level);
 void* xDbgLog            (unsigned int module, int logoption, const char *file, int line, const char *f, ...);
 
 // defines
-#define XLOG_DEBUG(mod, ...)    xDbgLog(mod, XLOG_LEVEL_DEBUG, __FILE__, __LINE__, __VA_ARGS__)
-#define XLOG_TRACE(mod, ...)    xDbgLog(mod, XLOG_LEVEL_TRACE, __FILE__, __LINE__, __VA_ARGS__)
-#define XLOG_INFO(mod, ...)     xDbgLog(mod, XLOG_LEVEL_INFO, __FILE__, __LINE__, __VA_ARGS__)
-#define XLOG_WARNING(mod, ...)  xDbgLog(mod, XLOG_LEVEL_WARNING, __FILE__, __LINE__, __VA_ARGS__)
-#define XLOG_ERROR(mod, ...)    xDbgLog(mod, XLOG_LEVEL_ERROR, __FILE__, __LINE__, __VA_ARGS__)
-#define XLOG_KLOG(mod, ...)     xDbgLog(mod, XLOG_LEVEL_INFO|XLOG_OPTION_KLOG, __FILE__, __LINE__, __VA_ARGS__)
-#define XLOG_SLOG(mod, ...)     xDbgLog(mod, XLOG_LEVEL_INFO|XLOG_OPTION_SLOG, __FILE__, __LINE__, __VA_ARGS__)
+#define XLOG_DEBUG(mod, ARG...)    xDbgLog(mod, XLOG_LEVEL_DEBUG, __FILE__, __LINE__, ##ARG)
+#define XLOG_TRACE(mod, ARG...)    xDbgLog(mod, XLOG_LEVEL_TRACE, __FILE__, __LINE__, ##ARG)
+#define XLOG_INFO(mod, ARG...)     xDbgLog(mod, XLOG_LEVEL_INFO, __FILE__, __LINE__, ##ARG)
+#define XLOG_WARNING(mod, ARG...)  xDbgLog(mod, XLOG_LEVEL_WARNING, __FILE__, __LINE__, ##ARG)
+#define XLOG_ERROR(mod, ARG...)    xDbgLog(mod, XLOG_LEVEL_ERROR, __FILE__, __LINE__, ##ARG)
+#define XLOG_KLOG(mod, ARG...)     xDbgLog(mod, XLOG_LEVEL_INFO|XLOG_OPTION_KLOG, __FILE__, __LINE__, ##ARG)
+#define XLOG_SLOG(mod, ARG...)     xDbgLog(mod, XLOG_LEVEL_INFO|XLOG_OPTION_SLOG, __FILE__, __LINE__, ##ARG)
+#define XLOG_XORG(mod, ARG...)     xDbgLog(mod, XLOG_LEVEL_INFO|XLOG_OPTION_XORG, __FILE__, __LINE__, ##ARG)
+#define XLOG_SECURE(mod, ARG...)   xDbgLog(mod, XLOG_LEVEL_INFO|XLOG_OPTION_SECURE, __FILE__, __LINE__, ##ARG)
 
 #define XDBG_DEBUG(mod, fmt, ARG...)      XLOG_DEBUG(mod, "[%s] "fmt, __FUNCTION__, ##ARG)
 #define XDBG_TRACE(mod, fmt, ARG...)      XLOG_TRACE(mod, "[%s] "fmt, __FUNCTION__, ##ARG)
@@ -93,6 +98,14 @@ void* xDbgLog            (unsigned int module, int logoption, const char *file,
 #define XDBG_ERRNO(mod, fmt, ARG...)      XLOG_ERROR(mod, "[%s](err=%s(%d)) "fmt, __FUNCTION__, strerror(errno), errno, ##ARG)
 #define XDBG_KLOG(mod, fmt, ARG...)       XLOG_KLOG(mod, "[%s] "fmt, __FUNCTION__, ##ARG)
 #define XDBG_SLOG(mod, fmt, ARG...)       XLOG_SLOG(mod, "[%s] "fmt, __FUNCTION__, ##ARG)
+#define XDBG_XORG(mod, fmt, ARG...)       XLOG_XORG(mod, "[%s] "fmt, __FUNCTION__, ##ARG)
+
+/* _SECURE_LOG defined by system, <dlog.h> */
+#ifdef _SECURE_LOG
+#define XDBG_SECURE(mod, fmt, ARG...)     XLOG_SECURE(mod, "[%s] "fmt, __FUNCTION__, ##ARG)
+#else
+#define XDBG_SECURE(mod, fmt, ARG...)     (0)
+#endif
 
 #define XDBG_NEVER_GET_HERE(mod)          XLOG_ERROR(mod, "[%s:%d] ** NEVER GET HERE **\n", __FUNCTION__,__LINE__)
 
index f5560de..9e75adb 100644 (file)
@@ -30,43 +30,33 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 **************************************************************************/
 
 #include <stdarg.h>
-//#include <dlog.h>
+#include <dlog.h>
+
+#include "xdbg_log.h"
 
 void dLogWrapper (int loglevel, int module, const char * file, int line, const char * f, va_list args)
 {
-#if 0
-    const char * tag;
-    int priority;
-
-    if (module & LOGOPTION_DLOG_X)
-        tag = "xserver";
-    else if (module & LOGOPTION_DLOG_EVENT)
-        tag = "dlog_event";
-    else
-        return;
+    const char * tag = "Xorg";
 
     switch (loglevel)
     {
-    case LOGLEVEL_DEBUG:
-        priority = DLOG_DEBUG;
+    case XLOG_LEVEL_DEBUG:
+        SLOG_VA (LOG_DEBUG, tag, f, args);
         break;
-    case LOGLEVEL_TRACE:
-        priority = DLOG_INFO;
+    case XLOG_LEVEL_TRACE:
+        SLOG_VA (LOG_DEBUG, tag, f, args);
         break;
-    case LOGLEVEL_INFO:
-        priority = DLOG_WARN;
+    case XLOG_LEVEL_INFO:
+        SLOG_VA (LOG_INFO, tag, f, args);
         break;
-    case LOGLEVEL_WARNING:
-        priority = DLOG_ERROR;
+    case XLOG_LEVEL_WARNING:
+        SLOG_VA (LOG_WARN, tag, f, args);
         break;
-    case LOGLEVEL_ERROR:
-        priority = DLOG_FATAL;
+    case XLOG_LEVEL_ERROR:
+        SLOG_VA (LOG_ERROR, tag, f, args);
         break;
     default:
         return;
     }
-
-    SLOG_VA (priority, tag, f, args);
-#endif
 }
 
index 2ec77b4..987da82 100644 (file)
@@ -493,7 +493,7 @@ _traceEvent (CallbackListPtr *pcbl, pointer nulldata, pointer calldata)
             {
             case KeyPress:
             case KeyRelease:
-                XDBG_INFO (MXDBG, "%s(%d)_%d(%s.%d : %s.0x%lx) root(%d,%d) win(%d,%d)\n"
+                XDBG_SECURE (MXDBG, "%s(%d)_%d(%s.%d : %s.0x%lx) root(%d,%d) win(%d,%d)\n"
                         , ename[type-KeyPress], pev->u.u.detail, pev->u.u.type
                         , info->command, info->pid
                         , _traceGetWindowName (pClient, pev->u.keyButtonPointer.event), pev->u.keyButtonPointer.event
@@ -503,7 +503,7 @@ _traceEvent (CallbackListPtr *pcbl, pointer nulldata, pointer calldata)
 
             case ButtonPress:
             case ButtonRelease:
-                XDBG_INFO (MXDBG, "%s(%d)_%d(%s.%d : %s.0x%lx) root(%d,%d) win(%d,%d)\n"
+                XDBG_SECURE (MXDBG, "%s(%d)_%d(%s.%d : %s.0x%lx) root(%d,%d) win(%d,%d)\n"
                         , ename[type-KeyPress], pev->u.u.detail, pev->u.u.type
                         , info->command, info->pid
                         , _traceGetWindowName (pClient, pev->u.keyButtonPointer.event), pev->u.keyButtonPointer.event
index 50e81f6..0965507 100644 (file)
@@ -127,7 +127,7 @@ _traceClientState (CallbackListPtr *list, pointer closure, pointer calldata)
         if (client->clientState == ClientStateInitial)
               _debugClientInfo (client);
 
-        XDBG_INFO (MXDBG, "id:%d, conn_fd:%d, pid:%d, uid:%d, name:%s (%s)\n",
+        XDBG_SECURE (MXDBG, "id:%d, conn_fd:%d, pid:%d, uid:%d, name:%s (%s)\n",
               info->index, info->conn_fd, info->pid, info->uid, info->command,
               clientState[client->clientState]);
         return;
index 7497364..55f15d5 100644 (file)
@@ -5,6 +5,7 @@ Release:    1
 Group:      System/Libraries
 License:    MIT
 Source0:    %{name}-%{version}.tar.gz
+BuildRequires:  pkgconfig(dlog)
 BuildRequires:  pkgconfig(xorg-server)
 BuildRequires:  pkgconfig(x11)
 BuildRequires:  pkgconfig(xext)
@@ -53,6 +54,7 @@ Group: Development/Libraries
 Requires: %{name} = %{version}-%{release}
 Requires: pkgconfig(xorg-server)
 Requires: pkgconfig(x11)
+Requires: pkgconfig(dlog)
 
 %description devel
 X server runtime debug library development package