Author: sayer
Date: 2010-05-01 17:06:11 +0200 (Sat, 01 May 2010)
New Revision: 1879

Modified:
   trunk/Makefile.defs
   trunk/core/log.cpp
   trunk/core/log.h
Log:
per default, put
 1. not the complete function signature in the log
 2. the location (PID/TID/file/line...) at the beginning

see  1  -DLOG_PRETTY_FUNCTION and 2  -DLOG_LOC_DATA_ATEND in Makefile.defs


Modified: trunk/Makefile.defs
===================================================================
--- trunk/Makefile.defs 2010-05-01 14:19:18 UTC (rev 1878)
+++ trunk/Makefile.defs 2010-05-01 15:06:11 UTC (rev 1879)
@@ -21,6 +21,8 @@
 #         -DMAX_RTP_SESSIONS=8192 \
 #        -DSUPPORT_IPV6 \
 #        -DNO_THREADID_LOG \
+#         -DLOG_PRETTY_FUNCTION \
+#         -DLOG_LOC_DATA_ATEND
 
 
 # compile with session thread pool support?

Modified: trunk/core/log.cpp
===================================================================
--- trunk/core/log.cpp  2010-05-01 14:19:18 UTC (rev 1878)
+++ trunk/core/log.cpp  2010-05-01 15:06:11 UTC (rev 1879)
@@ -121,16 +121,34 @@
 {
   static const int log2syslog_level[] = { LOG_ERR, LOG_WARNING, LOG_INFO, 
LOG_DEBUG };
 #ifdef _DEBUG
+
 # ifndef NO_THREADID_LOG
-  syslog(log2syslog_level[level], "%s: %s [%s, #%lx] [%s:%d]",
-      log_level2str[level], msg, func, tid, file, line);
+#  ifdef LOG_LOC_DATA_ATEND
+  syslog(log2syslog_level[level], "%s: %s [#%lx] [%s %s:%d]",
+      log_level2str[level], msg, tid, func, file, line);
+#  else
+  syslog(log2syslog_level[level], "[#%lx] [%s, %s:%d] %s: %s",
+        tid, func, file, line, log_level2str[level], msg);
+#  endif
 # else /* NO_THREADID_LOG */
+#  ifdef LOG_LOC_DATA_ATEND
   syslog(log2syslog_level[level], "%s: %s [%s] [%s:%d]",
       log_level2str[level], msg, func, file, line);
+#  else 
+  syslog(log2syslog_level[level], "[%s, %s:%d] %s: %s",
+        func, file, line, log_level2str[level], msg);
+#  endif
 # endif /* NO_THREADID_LOG */
+
 #else /* !_DEBUG */
+#  ifdef LOG_LOC_DATA_ATEND
   syslog(log2syslog_level[level], "%s: %s [%s:%d]",
       log_level2str[level], msg, file, line);
+#  else
+  syslog(log2syslog_level[level], "[%s:%d] %s: %s",
+        file, line, log_level2str[level], msg);
+#  endif
+
 #endif /* !_DEBUG */
 }
 

Modified: trunk/core/log.h
===================================================================
--- trunk/core/log.h    2010-05-01 14:19:18 UTC (rev 1878)
+++ trunk/core/log.h    2010-05-01 15:06:11 UTC (rev 1879)
@@ -57,7 +57,11 @@
   ((level) < L_ERR ? L_ERR : ((level) > L_DBG ? L_DBG : (level)))
 
 #ifdef __cplusplus
-# define FUNC_NAME __PRETTY_FUNCTION__
+# ifdef PRETTY_FUNCTION_LOG
+#  define FUNC_NAME __PRETTY_FUNCTION__
+# else
+#  define FUNC_NAME __FUNCTION__
+#endif
 #else
 # define FUNC_NAME __FUNCTION__
 #endif
@@ -72,12 +76,12 @@
 #ifdef _DEBUG
 # ifndef NO_THREADID_LOG
 #  define GET_TID() pthread_self()
-#  define LOC_FMT   " [%s, #%lx] [%u/%s:%d]"
-#  define LOC_DATA  FUNC_NAME, (unsigned long)tid_, pid_, __FILE__, __LINE__
+#  define LOC_FMT   " [#%lx/%u] [%s, %s:%d]"
+#  define LOC_DATA  tid_, pid_, FUNC_NAME, __FILE__, __LINE__
 # else
 #  define GET_TID() 0
-#  define LOC_FMT   " [%s] [%u/%s:%d]"
-#  define LOC_DATA  FUNC_NAME, pid_, __FILE__, __LINE__
+#  define LOC_FMT   " [%u] [%s %s:%d]"
+#  define LOC_DATA  pid_, FUNC_NAME,  __FILE__, __LINE__
 # endif
 #else
 # define GET_TID()   0
@@ -85,25 +89,31 @@
 # define LOC_DATA  pid_, __FILE__, __LINE__
 #endif
 
+#ifdef LOG_LOC_DATA_ATEND
+#define COMPLETE_LOG_FMT "%s: %s" LOC_FMT "\n", log_level2str[level_], msg_, 
LOC_DATA
+#else
+#define COMPLETE_LOG_FMT LOC_FMT " %s: %s" "\n", LOC_DATA, 
log_level2str[level_], msg_
+#endif
+
 /* The underscores in parameter and local variable names are there to
    avoid collisions. */
-#define _LOG(level__, fmt, args...) \
-  do { \
-    int level_ = FIX_LOG_LEVEL(level__); \
-    \
-    if ((level_) <= log_level) { \
-      pid_t pid_ = GET_PID(); \
-      pthread_t tid_ = GET_TID(); \
-      char msg_[512]; \
-      int n_ = snprintf(msg_, sizeof(msg_), fmt, ##args); \
-      if (msg_[n_ - 1] == '\n') msg_[n_ - 1] = '\0'; \
-      \
-      if (log_stderr) { \
-        fprintf(stderr, "%s: %s" LOC_FMT "\n", log_level2str[level_], msg_, 
LOC_DATA); \
-       fflush(stderr); \
-      } \
+#define _LOG(level__, fmt, args...)                                    \
+  do {                                                                 \
+    int level_ = FIX_LOG_LEVEL(level__);                               \
+                                                                       \
+    if ((level_) <= log_level) {                                       \
+      pid_t pid_ = GET_PID();                                          \
+      pthread_t tid_ = GET_TID();                                      \
+      char msg_[512];                                                  \
+      int n_ = snprintf(msg_, sizeof(msg_), fmt, ##args);              \
+      if (msg_[n_ - 1] == '\n') msg_[n_ - 1] = '\0';                   \
+                                                                       \
+      if (log_stderr) {                                                        
\
+       fprintf(stderr, COMPLETE_LOG_FMT);                              \
+       fflush(stderr);                                                 \
+      }                                                                        
\
       run_log_hooks(level_, pid_, tid_, FUNC_NAME, __FILE__, __LINE__, msg_); \
-    } \
+    }                                                                  \
   } while(0)
 
 /**

_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to