c-logger/logger.c

28 lines
670 B
C

#include "logger.h"
void _logger(int level, char *file, int line, char* format, ...) {
time_t t = time(NULL);
switch (level) {
case LOG_LEVEL_ERROR:
fprintf(stderr, "%sERROR %s:%d: ", asctime(localtime(&t)), file, line);
break;
case LOG_LEVEL_WARNING:
fprintf(stderr, "%sWARNING %s:%d: ", asctime(localtime(&t)), file, line);
break;
case LOG_LEVEL_INFO:
fprintf(stdout, "%sINFO %s:%d: ", asctime(localtime(&t)), file, line);
break;
case LOG_LEVEL_DEBUG:
fprintf(stdout, "%sDEBUG %s:%d: ", asctime(localtime(&t)), file, line);
break;
}
va_list args;
va_start(args, format);
vprintf(format, args);
va_end(args);
printf("\n");
}