43 lines
660 B
C
43 lines
660 B
C
#ifndef LOGGER_H_INCLUDED
|
|
#define LOGGER_H_INCLUDED
|
|
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <time.h>
|
|
|
|
|
|
enum LogLevel {
|
|
PANIC=6,
|
|
FATAL=5,
|
|
ERROR=4,
|
|
WARN=3,
|
|
INFO=2,
|
|
DEBUG=1,
|
|
TRACE=0
|
|
};
|
|
typedef enum LogLevel LogLevel;
|
|
|
|
struct Logger {
|
|
clock_t t0;
|
|
LogLevel level;
|
|
FILE* logfile;
|
|
};
|
|
typedef struct Logger* Logger;
|
|
|
|
extern Logger logger;
|
|
|
|
|
|
void create_logger(char *logpath, LogLevel level);
|
|
void destroy_logger();
|
|
|
|
|
|
void panic(char *str, ...);
|
|
void fatal(char *str, ...);
|
|
void error(char *str, ...);
|
|
void warn(char *str, ...);
|
|
void info(char *str, ...);
|
|
void debug(char *str, ...);
|
|
void trace(char *str, ...);
|
|
|
|
#endif
|