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"
|
#include "logger.h"
|
||||||
|
|
||||||
Logger create_logger(char* logpath, LogLevel level) {
|
void create_logger(char* logpath, LogLevel level) {
|
||||||
Logger logger = malloc(sizeof(*logger));
|
|
||||||
|
|
||||||
logger->t0 = clock();
|
logger->t0 = clock();
|
||||||
logger->level = level;
|
logger->level = level;
|
||||||
|
|
||||||
|
@ -18,17 +16,15 @@ Logger create_logger(char* logpath, LogLevel level) {
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
logger->logfile = NULL;
|
logger->logfile = NULL;
|
||||||
|
|
||||||
return logger;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void destroy_logger(Logger logger) {
|
void destroy_logger() {
|
||||||
if (logger->logfile != NULL)
|
if (logger->logfile != NULL)
|
||||||
fclose(logger->logfile);
|
fclose(logger->logfile);
|
||||||
free(logger);
|
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();
|
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_list args;
|
||||||
va_start(args, str);
|
va_start(args, str);
|
||||||
logprint(logger, PANIC, str, args);
|
logprint(PANIC, str, args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
void fatal(Logger logger, char *str, ...)
|
void fatal(char *str, ...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, str);
|
va_start(args, str);
|
||||||
logprint(logger, FATAL, str, args);
|
logprint(FATAL, str, args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
void error(Logger logger, char *str, ...)
|
void error(char *str, ...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, str);
|
va_start(args, str);
|
||||||
logprint(logger, ERROR, str, args);
|
logprint(ERROR, str, args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
void warn(Logger logger, char *str, ...)
|
void warn(char *str, ...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, str);
|
va_start(args, str);
|
||||||
logprint(logger, WARN, str, args);
|
logprint(WARN, str, args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
void info(Logger logger, char *str, ...)
|
void info(char *str, ...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, str);
|
va_start(args, str);
|
||||||
logprint(logger, INFO, str, args);
|
logprint(INFO, str, args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
void debug(Logger logger, char *str, ...)
|
void debug(char *str, ...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, str);
|
va_start(args, str);
|
||||||
logprint(logger, DEBUG, str, args);
|
logprint(DEBUG, str, args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
void trace(Logger logger, char *str, ...)
|
void trace(char *str, ...)
|
||||||
{
|
{
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, str);
|
va_start(args, str);
|
||||||
logprint(logger, TRACE, str, args);
|
logprint(TRACE, str, args);
|
||||||
va_end(args);
|
va_end(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int main()
|
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);
|
info("Je me lève.");
|
||||||
trace(logger, "Ceci est un trace de test %f", 1.6*2.5);
|
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;
|
typedef struct Logger* Logger;
|
||||||
|
|
||||||
|
|
||||||
Logger create_logger(char *logpath, LogLevel level);
|
extern Logger logger;
|
||||||
void destroy_logger(Logger logger);
|
|
||||||
|
|
||||||
void panic(Logger logger, char *str, ...);
|
void create_logger(char *logpath, LogLevel level);
|
||||||
void fatal(Logger logger, char *str, ...);
|
void destroy_logger();
|
||||||
void error(Logger logger, char *str, ...);
|
|
||||||
void warn(Logger logger, char *str, ...);
|
|
||||||
void info(Logger logger, char *str, ...);
|
void panic(char *str, ...);
|
||||||
void debug(Logger logger, char *str, ...);
|
void fatal(char *str, ...);
|
||||||
void trace(Logger logger, char *str, ...);
|
void error(char *str, ...);
|
||||||
|
void warn(char *str, ...);
|
||||||
|
void info(char *str, ...);
|
||||||
|
void debug(char *str, ...);
|
||||||
|
void trace(char *str, ...);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue