From 9a8214e0304a1dffe0a321d96d01045cfc34c8e8 Mon Sep 17 00:00:00 2001 From: Jonas Gunz Date: Fri, 29 Nov 2019 23:54:01 +0100 Subject: asdf --- src/log.h | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 src/log.h (limited to 'src/log.h') diff --git a/src/log.h b/src/log.h new file mode 100644 index 0000000..8b2c881 --- /dev/null +++ b/src/log.h @@ -0,0 +1,49 @@ +#pragma once + +#include +#include +#include +#include +#include +#include +#include + +#define _LOG_ERROR 1 +#define _LOG_WARNING 2 +#define _LOG_NOTE 3 +#define _LOG_DEBUG 4 + +unsigned int log_loglevel; +int log_fd; + +const char* log_loglevel_str[5]; + +#define LOGPRINTF(l,...) {\ + if((l) <= log_loglevel){\ + time_t current = time (NULL);\ + struct tm *tma = localtime(¤t);\ + char* date = asctime(tma);\ + date[strlen(date) - 1] = '\0';\ + printf("[%s] %s: ", date, log_loglevel_str[(l)]);\ + if((l) == _LOG_ERROR)\ + printf("%s:", strerror(errno));\ + if((l) == _LOG_DEBUG)\ + printf("%s:%d: ", __FILE__, __LINE__);\ + printf(__VA_ARGS__);\ + printf("\n");\ + fsync(STDOUT_FILENO);\ + }\ +} + + +/** + * Opens logfile, writes filedes to _fd + * */ +int log_init_file(char* _file, unsigned int _verbosity); + +/** + * Configures LOG macros for stdout + */ +int log_init_stdout(unsigned int _verbosity); + +int log_close(); -- cgit v1.2.3