aboutsummaryrefslogtreecommitdiff
path: root/common/log.c
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2016-07-28 22:21:01 -0400
committerGitHub <noreply@github.com>2016-07-28 22:21:01 -0400
commitddb44984c5f3aede3eea45403659e5614a7b752f (patch)
treecefdc717973d9b9b939f977d791528310ac51886 /common/log.c
parent762a6736013281133f6119e1829e5d6d5cc79834 (diff)
parent70360c5c0759ab7b4a3a9d7194fa21094c5a47be (diff)
Merge pull request #802 from acrisci/feature/timestamp-log-messages
Add timestamp to log messages
Diffstat (limited to 'common/log.c')
-rw-r--r--common/log.c15
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;