passage en global
This commit is contained in:
parent
bda435c105
commit
793b1dd142
51
logger.c
51
logger.c
|
@ -6,9 +6,7 @@
|
|||
|
||||
#include "logger.h"
|
||||
|
||||
Logger create_logger(char* logpath, LogLevel level) {
|
||||
Logger logger = malloc(sizeof(*logger));
|
||||
|
||||
void create_logger(char* logpath, LogLevel level) {
|
||||
logger->t0 = clock();
|
||||
logger->level = level;
|
||||
|
||||
|
@ -18,17 +16,15 @@ Logger create_logger(char* logpath, LogLevel level) {
|
|||
}
|
||||
else
|
||||
logger->logfile = NULL;
|
||||
|
||||
return logger;
|
||||
}
|
||||
|
||||
void destroy_logger(Logger logger) {
|
||||
void destroy_logger() {
|
||||
if (logger->logfile != NULL)
|
||||
fclose(logger->logfile);
|
||||
free(logger);
|
||||
}
|
||||
|
||||
void logprint(Logger logger, LogLevel level, char* str, va_list args)
|
||||
void logprint(LogLevel level, char* str, va_list args)
|
||||
{
|
||||
clock_t t = clock();
|
||||
|
||||
|
@ -76,69 +72,74 @@ void logprint(Logger logger, LogLevel level, char* str, va_list args)
|
|||
}
|
||||
|
||||
|
||||
void panic(Logger logger, char *str, ...)
|
||||
void panic(char *str, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, str);
|
||||
logprint(logger, PANIC, str, args);
|
||||
logprint(PANIC, str, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
void fatal(Logger logger, char *str, ...)
|
||||
void fatal(char *str, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, str);
|
||||
logprint(logger, FATAL, str, args);
|
||||
logprint(FATAL, str, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
void error(Logger logger, char *str, ...)
|
||||
void error(char *str, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, str);
|
||||
logprint(logger, ERROR, str, args);
|
||||
logprint(ERROR, str, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
void warn(Logger logger, char *str, ...)
|
||||
void warn(char *str, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, str);
|
||||
logprint(logger, WARN, str, args);
|
||||
logprint(WARN, str, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
void info(Logger logger, char *str, ...)
|
||||
void info(char *str, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, str);
|
||||
logprint(logger, INFO, str, args);
|
||||
logprint(INFO, str, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
void debug(Logger logger, char *str, ...)
|
||||
void debug(char *str, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, str);
|
||||
logprint(logger, DEBUG, str, args);
|
||||
logprint(DEBUG, str, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
void trace(Logger logger, char *str, ...)
|
||||
void trace(char *str, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, str);
|
||||
logprint(logger, TRACE, str, args);
|
||||
logprint(TRACE, str, args);
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
|
||||
int main()
|
||||
{
|
||||
Logger logger = create_logger("logger.log", WARN);
|
||||
create_logger("logger.log", TRACE);
|
||||
|
||||
warn(logger, "Ceci est un warn de test %f", 1.6*2.5);
|
||||
trace(logger, "Ceci est un trace de test %f", 1.6*2.5);
|
||||
info("Je me lève.");
|
||||
trace("Il y a un oiseau derrière la fenêtre.");
|
||||
info("Je sors de ma chambre. Il fait %d degrés.", 18);
|
||||
warn("Je trébuche.");
|
||||
info("Je descends les escaliers");
|
||||
info("Je suis dans la rue");
|
||||
panic("Je meurs");
|
||||
|
||||
destroy_logger(logger);
|
||||
destroy_logger();
|
||||
}
|
||||
|
|
21
logger.h
21
logger.h
|
@ -25,15 +25,18 @@ struct Logger {
|
|||
typedef struct Logger* Logger;
|
||||
|
||||
|
||||
Logger create_logger(char *logpath, LogLevel level);
|
||||
void destroy_logger(Logger logger);
|
||||
extern Logger logger;
|
||||
|
||||
void panic(Logger logger, char *str, ...);
|
||||
void fatal(Logger logger, char *str, ...);
|
||||
void error(Logger logger, char *str, ...);
|
||||
void warn(Logger logger, char *str, ...);
|
||||
void info(Logger logger, char *str, ...);
|
||||
void debug(Logger logger, char *str, ...);
|
||||
void trace(Logger logger, char *str, ...);
|
||||
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
|
||||
|
|
Loading…
Reference in New Issue