From 7c5b8b1fc1612a98dcd4af1046e03810d125add4 Mon Sep 17 00:00:00 2001 From: David Phillips Date: Wed, 29 Aug 2018 21:28:02 +1200 Subject: Add alarm change timestamping --- alarm-tools/alarms-show.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'alarm-tools/alarms-show.c') diff --git a/alarm-tools/alarms-show.c b/alarm-tools/alarms-show.c index 938401e..58d0064 100644 --- a/alarm-tools/alarms-show.c +++ b/alarm-tools/alarms-show.c @@ -18,7 +18,10 @@ int dump_alarms(int sock) uint32_t count = 0; uint32_t packet_type = 0; uint8_t is_raised = 0; + time_t last_change; + struct tm last_change_tm; char buffer[128]; + char time_string[32]; pid_t owner = 0; packet_type = ALARMD_PACKET_TYPE_QUERY; @@ -49,11 +52,16 @@ int dump_alarms(int sock) perror("recv"); break; } + if (recv(sock, &last_change, sizeof(last_change), 0) != sizeof(last_change)) { + perror("recv"); + break; + } if (recv(sock, &owner, sizeof(owner), 0) != sizeof(owner)) { perror("recv"); break; } - printf("[%s] [pid %d] %s\n", is_raised ? "\x1b[1;31mRAISE\x1b[0m" : "\x1b[1;32mCLEAR\x1b[0m", owner, buffer); + strftime(time_string, sizeof(time_string), "%Y-%m-%d %H:%M:%S", localtime_r(&last_change, &last_change_tm)); + printf("[%s] [pid %d] [%s] %s\n", is_raised ? "\x1b[1;31mRAISE\x1b[0m" : "\x1b[1;32mCLEAR\x1b[0m", owner, time_string, buffer); } if (count == 0) { -- cgit v1.1