mturk       2004/11/11 09:06:06

  Modified:    jk/native/common jk_util.c
  Log:
  Implement new __FUNCTION__ logging.
  Also log PID and ThreadID. This helps tracing log messages
  when they are comming from diferent childs/threads.
  
  Revision  Changes    Path
  1.35      +46 -9     jakarta-tomcat-connectors/jk/native/common/jk_util.c
  
  Index: jk_util.c
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_util.c,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- jk_util.c 11 Nov 2004 09:44:29 -0000      1.34
  +++ jk_util.c 11 Nov 2004 17:06:06 -0000      1.35
  @@ -24,6 +24,7 @@
   
   #include "jk_util.h"
   #include "jk_ajp12_worker.h"
  +#include "jk_mt.h"
   
   #define SYSPROPS_OF_WORKER          ("sysprops")
   #define STDERR_OF_WORKER            ("stderr")
  @@ -84,6 +85,17 @@
   #define JK_TIME_FORMAT "[%a %b %d %H:%M:%S %Y] "
   #endif
   
  +
  +static const char *jk_level_werbs[] = {
  +    "[" JK_LOG_TRACE_WERB "] ",
  +    "[" JK_LOG_DEBUG_VERB "] ",
  +    "[" JK_LOG_INFO_VERB  "]  ",
  +    "[" JK_LOG_WARNING_VERB  "]  ",
  +    "[" JK_LOG_ERROR_VERB "] ",
  +    "[" JK_LOG_EMERG_VERB "] ",
  +    NULL
  +};
  +
   const char *jk_log_fmt = JK_TIME_FORMAT;
   
   static void set_time_str(char *str, int len)
  @@ -168,7 +180,11 @@
           return JK_LOG_EMERG_LEVEL;
       }
   
  -    return JK_LOG_DEBUG_LEVEL;
  +    if (0 == strcasecmp(level, JK_LOG_DEBUG_VERB)) {
  +        return JK_LOG_DEBUG_LEVEL;
  +    }
  +
  +    return JK_LOG_TRACE_LEVEL;
   }
   
   int jk_open_file_logger(jk_logger_t **l, const char *file, int level)
  @@ -245,7 +261,6 @@
               f++;
           }
   
  -#ifdef USE_SPRINTF              /* until we get a snprintf function */
   #ifdef NETWARE
           buf = (char *)malloc(HUGE_BUFFER_SIZE);
           if (NULL == buf)
  @@ -253,15 +268,37 @@
   #endif
           set_time_str(buf, HUGE_BUFFER_SIZE);
           used = strlen(buf);
  +
  +#ifdef USE_SPRINTF              /* until we get a snprintf function */       
 
           if (line)
  -            used += sprintf(&buf[used], " [%s (%d)]: ", f, line);
  +            used += sprintf(&buf[used], "[%d:%d] ", getpid(),
  +                            JK_THREADID());
  +#else
  +        if (line)
  +            used += snprintf(&buf[used], HUGE_BUFFER_SIZE, "[%d:%d] ",
  +                             getpid(), JK_THREADID());
  +#endif
  +        if (used < 0) {
  +            return 0;           /* [V] not sure what to return... */
  +        }
  +        if (line) {
  +            strcat(buf, jk_level_werbs[level]);
  +            used += 8;
  +        
  +            if (funcname) {
  +                strcat(buf, funcname);
  +                strcat(buf, "::");
  +                used += strlen(funcname) + 2;
  +            }
  +        }
  +
  +#ifdef USE_SPRINTF              /* until we get a snprintf function */       
 
  +        if (line)
  +            used += sprintf(&buf[used], "%s (%d): ", f, line);
   #else
  -        set_time_str(buf, HUGE_BUFFER_SIZE);
  -        used = strlen(buf);
           if (line)
  -            used +=
  -                snprintf(&buf[used], HUGE_BUFFER_SIZE, " [%s (%d)]: ", f,
  -                         line);
  +            used += snprintf(&buf[used], HUGE_BUFFER_SIZE, "%s (%d): ",
  +                             f, line);
   #endif
           if (used < 0) {
               return 0;           /* [V] not sure what to return... */
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to