diff options
author | Tony Crisci <tony@dubstepdish.com> | 2016-07-28 22:15:14 -0400 |
---|---|---|
committer | Tony Crisci <tony@dubstepdish.com> | 2016-07-28 22:15:14 -0400 |
commit | 70360c5c0759ab7b4a3a9d7194fa21094c5a47be (patch) | |
tree | cefdc717973d9b9b939f977d791528310ac51886 /common/log.c | |
parent | 762a6736013281133f6119e1829e5d6d5cc79834 (diff) |
Add timestamp to log messages
Diffstat (limited to 'common/log.c')
-rw-r--r-- | common/log.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/common/log.c b/common/log.c index 6f9fb07e..1da2ba2f 100644 --- a/common/log.c +++ b/common/log.c @@ -8,6 +8,7 @@ #include <fcntl.h> #include <unistd.h> #include <signal.h> +#include <time.h> #include <errno.h> #include <string.h> #include <stringop.h> @@ -65,6 +66,20 @@ void sway_abort(const char *format, ...) { void _sway_log(const char *filename, int line, log_importance_t verbosity, const char* format, ...) { if (verbosity <= v) { + // prefix the time to the log message + static struct tm result; + static time_t t; + static struct tm *tm_info; + char buffer[26]; + + // get current time + t = time(NULL); + // convert time to local time (determined by the locale) + tm_info = localtime_r(&t, &result); + // generate time prefix + strftime(buffer, sizeof(buffer), "%x %X - ", tm_info); + fprintf(stderr, "%s", buffer); + unsigned int c = verbosity; if (c > sizeof(verbosity_colors) / sizeof(char *) - 1) { c = sizeof(verbosity_colors) / sizeof(char *) - 1; |