diff options
Diffstat (limited to 'src/logger')
| -rw-r--r-- | src/logger/logger.c | 5 | ||||
| -rw-r--r-- | src/logger/logger.h | 25 |
2 files changed, 30 insertions, 0 deletions
diff --git a/src/logger/logger.c b/src/logger/logger.c new file mode 100644 index 0000000..9f1e612 --- /dev/null +++ b/src/logger/logger.c @@ -0,0 +1,5 @@ +#include "logger.h" + +void send_log(mqd_t target, const char* msg, int n) { + mq_send(target, msg, n, 0); +} diff --git a/src/logger/logger.h b/src/logger/logger.h new file mode 100644 index 0000000..ed265e9 --- /dev/null +++ b/src/logger/logger.h @@ -0,0 +1,25 @@ +#include <stdio.h> +#include <mqueue.h> + +#define log_infof(...) do { \ + char log_buf[1024]; \ + log_buf[0] = 'i'; \ + snprintf(log_buf + 1, 1023, __VA_ARGS__); \ + send_log(logging, log_buf, 1024); \ +} while(0); + +#define log_warnf(...) do { \ + char log_buf[1024]; \ + log_buf[0] = 'w'; \ + snprintf(log_buf, 1023, __VA_ARGS__); \ + send_log(logging, log_buf, 1024) \ +} while(0); + +#define log_errof(...) do { \ + char log_buf[1024]; \ + log_buf[0] = 'e'; \ + snprintf(log_buf, 1023, __VA_ARGS__); \ + send_log(logging, log_buf, 1024) \ +} while(0); + +void send_log(mqd_t target, const char* msg, int n); |
