diff options
Diffstat (limited to 'libglusterfs/src/logging.c')
| -rw-r--r-- | libglusterfs/src/logging.c | 73 | 
1 files changed, 31 insertions, 42 deletions
diff --git a/libglusterfs/src/logging.c b/libglusterfs/src/logging.c index c47237f829e..0cfeed586d3 100644 --- a/libglusterfs/src/logging.c +++ b/libglusterfs/src/logging.c @@ -206,13 +206,12 @@ _gf_log_nomem (const char *domain, const char *file,                 size_t size)  {          const char     *basename        = NULL; -        struct tm      *tm              = NULL;          xlator_t       *this            = NULL;          struct timeval  tv              = {0,};          int             ret             = 0; -        char            msg[8092]; -        char            timestr[256]; -        char            callstr[4096]; +        char            msg[8092]       = {0,}; +        char            timestr[256]    = {0,}; +        char            callstr[4096]   = {0,};          this = THIS; @@ -272,12 +271,11 @@ _gf_log_nomem (const char *domain, const char *file,          if (-1 == ret)                  goto out; -        tm    = localtime (&tv.tv_sec); -          pthread_mutex_lock (&logfile_mutex);          { -                strftime (timestr, 256, "%Y-%m-%d %H:%M:%S", tm); -                snprintf (timestr + strlen (timestr), 256 - strlen (timestr), +                gf_time_fmt (timestr, sizeof timestr, tv.tv_sec, gf_timefmt_FT); +                snprintf (timestr + strlen (timestr), +                          sizeof timestr - strlen (timestr),                            ".%"GF_PRI_SUSECONDS, tv.tv_usec);                  basename = strrchr (file, '/'); @@ -321,7 +319,6 @@ _gf_log_callingfn (const char *domain, const char *file, const char *function,                     int line, gf_loglevel_t level, const char *fmt, ...)  {          const char     *basename        = NULL; -        struct tm      *tm              = NULL;          xlator_t       *this            = NULL;          char           *str1            = NULL;          char           *str2            = NULL; @@ -391,14 +388,13 @@ _gf_log_callingfn (const char *domain, const char *file, const char *function,          if (-1 == ret)                  goto out; -        tm    = localtime (&tv.tv_sec); -          pthread_mutex_lock (&logfile_mutex);          {                  va_start (ap, fmt); -                strftime (timestr, 256, "%Y-%m-%d %H:%M:%S", tm); -                snprintf (timestr + strlen (timestr), 256 - strlen (timestr), +                gf_time_fmt (timestr, sizeof timestr, tv.tv_sec, gf_timefmt_FT); +                snprintf (timestr + strlen (timestr), +                          sizeof timestr - strlen (timestr),                            ".%"GF_PRI_SUSECONDS, tv.tv_usec);                  basename = strrchr (file, '/'); @@ -464,20 +460,18 @@ int  _gf_log (const char *domain, const char *file, const char *function, int line,           gf_loglevel_t level, const char *fmt, ...)  { -        const char  *basename = NULL; -        FILE        *new_logfile = NULL; -        va_list      ap; -        struct tm   *tm = NULL; -        char         timestr[256]; +        const char    *basename = NULL; +        FILE          *new_logfile = NULL; +        va_list        ap; +        char           timestr[256] = {0,};          struct timeval tv = {0,}; - -        char        *str1 = NULL; -        char        *str2 = NULL; -        char        *msg  = NULL; -        size_t       len  = 0; -        int          ret  = 0; -        int          fd   = -1; -        xlator_t    *this = NULL; +        char          *str1 = NULL; +        char          *str2 = NULL; +        char          *msg  = NULL; +        size_t         len  = 0; +        int            ret  = 0; +        int            fd   = -1; +        xlator_t      *this = NULL;          this = THIS; @@ -538,14 +532,13 @@ log:          if (-1 == ret)                  goto out; -        tm    = localtime (&tv.tv_sec); -          pthread_mutex_lock (&logfile_mutex);          {                  va_start (ap, fmt); -                strftime (timestr, 256, "%Y-%m-%d %H:%M:%S", tm); -                snprintf (timestr + strlen (timestr), 256 - strlen (timestr), +                gf_time_fmt (timestr, sizeof timestr, tv.tv_sec, gf_timefmt_FT); +                snprintf (timestr + strlen (timestr), +                          sizeof timestr - strlen (timestr),                            ".%"GF_PRI_SUSECONDS, tv.tv_usec);                  basename = strrchr (file, '/'); @@ -664,15 +657,14 @@ gf_cmd_log_init (const char *filename)  int  gf_cmd_log (const char *domain, const char *fmt, ...)  { -        va_list      ap; -        struct tm   *tm = NULL; -        char         timestr[256]; +        va_list        ap; +        char           timestr[64];          struct timeval tv = {0,}; -        char        *str1 = NULL; -        char        *str2 = NULL; -        char        *msg  = NULL; -        size_t       len  = 0; -        int          ret  = 0; +        char          *str1 = NULL; +        char          *str2 = NULL; +        char          *msg  = NULL; +        size_t         len  = 0; +        int            ret  = 0;          if (!cmdlogfile)                  return -1; @@ -687,11 +679,8 @@ gf_cmd_log (const char *domain, const char *fmt, ...)          ret = gettimeofday (&tv, NULL);          if (ret == -1)                  goto out; - -        tm = localtime (&tv.tv_sec); -          va_start (ap, fmt); -        strftime (timestr, 256, "%Y-%m-%d %H:%M:%S", tm); +        gf_time_fmt (timestr, sizeof timestr, tv.tv_sec, gf_timefmt_FT);          snprintf (timestr + strlen (timestr), 256 - strlen (timestr),                    ".%"GF_PRI_SUSECONDS, tv.tv_usec);  | 
