diff options
Diffstat (limited to 'usbmuxd/log.c')
-rw-r--r-- | usbmuxd/log.c | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/usbmuxd/log.c b/usbmuxd/log.c index 4f67e85..2ccb3cc 100644 --- a/usbmuxd/log.c +++ b/usbmuxd/log.c @@ -32,7 +32,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #include "log.h" -int log_level = LL_FATAL; +int log_level = LL_WARNING; int log_syslog = 0; @@ -66,17 +66,22 @@ void usbmuxd_log(enum loglevel level, const char *fmt, ...) char *fs; struct timeval ts; struct tm *tp; - + gettimeofday(&ts, NULL); tp = localtime(&ts.tv_sec); - + if(level > log_level) return; - + fs = malloc(20 + strlen(fmt)); - strftime(fs, 10, "[%H:%M:%S", tp); - sprintf(fs+9, ".%03d][%d] %s\n", (int)(ts.tv_usec / 1000), level, fmt); - + + if(log_syslog) { + sprintf(fs, "[%d] %s\n", level, fmt); + } else { + strftime(fs, 10, "[%H:%M:%S", tp); + sprintf(fs+9, ".%03d][%d] %s\n", (int)(ts.tv_usec / 1000), level, fmt); + } + va_start(ap, fmt); if (log_syslog) { vsyslog(level_to_syslog_level(level), fs, ap); @@ -84,6 +89,6 @@ void usbmuxd_log(enum loglevel level, const char *fmt, ...) vfprintf(stderr, fs, ap); } va_end(ap); - + free(fs); } |