fix: logger
This commit is contained in:
		
							parent
							
								
									61e025343d
								
							
						
					
					
						commit
						db3bcaf7d1
					
				
					 28 changed files with 200 additions and 180 deletions
				
			
		| 
						 | 
				
			
			@ -17,6 +17,7 @@ typedef struct
 | 
			
		|||
{
 | 
			
		||||
    char *file;
 | 
			
		||||
    char *database;
 | 
			
		||||
    log_level_t log_level;
 | 
			
		||||
    run_type_t run_type;
 | 
			
		||||
    char name[MAX_NAME_LENGTH + 1];
 | 
			
		||||
    uint16_t discovery_port;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,8 +1,6 @@
 | 
			
		|||
#ifndef CONTROLLER_CONTANTS_H
 | 
			
		||||
#define CONTROLLER_CONTANTS_H
 | 
			
		||||
 | 
			
		||||
#include <log_levels.h>
 | 
			
		||||
 | 
			
		||||
#define SECONDS_PER_DAY 86400 // 60 * 60 * 24
 | 
			
		||||
 | 
			
		||||
#define SECONDS_PER_MINUTE 60
 | 
			
		||||
| 
						 | 
				
			
			@ -30,8 +28,4 @@
 | 
			
		|||
 | 
			
		||||
#define PIFACE_GPIO_BASE 200
 | 
			
		||||
 | 
			
		||||
#ifndef LOG_LEVEL
 | 
			
		||||
    #define LOG_LEVEL LOG_LEVEL_INFO
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#endif /* CONTROLLER_CONTANTS_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -50,4 +50,14 @@ typedef enum
 | 
			
		|||
    RUN_TYPE_TEST,
 | 
			
		||||
} run_type_t;
 | 
			
		||||
 | 
			
		||||
typedef enum
 | 
			
		||||
{
 | 
			
		||||
    LOG_LEVEL_TRACE = 5,
 | 
			
		||||
    LOG_LEVEL_DEBUG = 4,
 | 
			
		||||
    LOG_LEVEL_INFO  = 3,
 | 
			
		||||
    LOG_LEVEL_WARN  = 2,
 | 
			
		||||
    LOG_LEVEL_ERROR = 1,
 | 
			
		||||
    LOG_LEVEL_FATAL = 0,
 | 
			
		||||
} log_level_t;
 | 
			
		||||
 | 
			
		||||
#endif /* CONTROLLER_ENUMS_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,11 +0,0 @@
 | 
			
		|||
#ifndef CONTROLLER_LOG_LEVELS_H
 | 
			
		||||
#define CONTROLLER_LOG_LEVELS_H
 | 
			
		||||
 | 
			
		||||
#define LOG_LEVEL_TRACE 5
 | 
			
		||||
#define LOG_LEVEL_DEBUG 4
 | 
			
		||||
#define LOG_LEVEL_INFO 3
 | 
			
		||||
#define LOG_LEVEL_WARN 2
 | 
			
		||||
#define LOG_LEVEL_ERROR 1
 | 
			
		||||
#define LOG_LEVEL_FATAL 0
 | 
			
		||||
 | 
			
		||||
#endif //CONTROLLER_LOG_LEVELS_H
 | 
			
		||||
| 
						 | 
				
			
			@ -8,55 +8,14 @@
 | 
			
		|||
#include <config.h>
 | 
			
		||||
#include <macros.h>
 | 
			
		||||
 | 
			
		||||
#define COLOR_TRACE COLOR_GREEN
 | 
			
		||||
#define COLOR_DEBUG COLOR_BLUE
 | 
			
		||||
#define COLOR_INFO COLOR_CYAN
 | 
			
		||||
#define COLOR_WARN COLOR_YELLOW
 | 
			
		||||
#define COLOR_ERROR COLOR_RED
 | 
			
		||||
#define COLOR_FATAL COLOR_MAGENTA
 | 
			
		||||
void
 | 
			
		||||
logger_log(FILE *stream, log_level_t level, const char *filename, int line, const char *func, const char *msg, ...);
 | 
			
		||||
 | 
			
		||||
#define _LOGGER_TIMESTAMP_SIZE 32 
 | 
			
		||||
char _LOGGER_TIMESTAMP[_LOGGER_TIMESTAMP_SIZE];
 | 
			
		||||
 | 
			
		||||
char*
 | 
			
		||||
logger_get_timestamp();
 | 
			
		||||
 | 
			
		||||
#define _LOGGER_MESSAGE(msg) " %s %s:%d:%s: " COLOR_NONE msg "\n", logger_get_timestamp(), __FILENAME__, __LINE__, __func__
 | 
			
		||||
 | 
			
		||||
#if LOG_LEVEL >= LOG_LEVEL_TRACE
 | 
			
		||||
    #define LOG_TRACE(msg, ...) fprintf(stdout, COLOR_TRACE "[TRACE]" _LOGGER_MESSAGE(msg), ##__VA_ARGS__)
 | 
			
		||||
#else
 | 
			
		||||
    #define LOG_TRACE(msg, ...)
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#if LOG_LEVEL >= LOG_LEVEL_DEBUG
 | 
			
		||||
    #define LOG_DEBUG(msg, ...) fprintf(stdout, COLOR_DEBUG "[DEBUG]" _LOGGER_MESSAGE(msg), ##__VA_ARGS__)
 | 
			
		||||
#else
 | 
			
		||||
    #define LOG_DEBUG(msg, ...)
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#if LOG_LEVEL >= LOG_LEVEL_INFO
 | 
			
		||||
    #define LOG_INFO(msg, ...) fprintf(stdout, COLOR_INFO "[ INFO]" _LOGGER_MESSAGE(msg), ##__VA_ARGS__)
 | 
			
		||||
#else
 | 
			
		||||
    #define LOG_INFO(msg, ...)
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#if LOG_LEVEL >= LOG_LEVEL_WARN
 | 
			
		||||
    #define LOG_WARN(msg, ...) fprintf(stdout, COLOR_WARN "[ WARN]" _LOGGER_MESSAGE(msg), ##__VA_ARGS__)
 | 
			
		||||
#else
 | 
			
		||||
    #define LOG_WARN(msg, ...) 
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#if LOG_LEVEL >= LOG_LEVEL_ERROR
 | 
			
		||||
    #define LOG_ERROR(msg, ...) fprintf(stderr, COLOR_ERROR "[ERROR]" _LOGGER_MESSAGE(msg), ##__VA_ARGS__)
 | 
			
		||||
#else
 | 
			
		||||
    #define LOG_ERROR(msg, ...)
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#if LOG_LEVEL >= LOG_LEVEL_FATAL
 | 
			
		||||
    #define LOG_FATAL(msg, ...) fprintf(stderr, COLOR_FATAL "[FATAL]" _LOGGER_MESSAGE(msg), ##__VA_ARGS__)
 | 
			
		||||
#else
 | 
			
		||||
    #define LOG_FATAL(msg, ...)
 | 
			
		||||
#endif
 | 
			
		||||
#define LOG_TRACE(...) logger_log(stdout, LOG_LEVEL_TRACE, __FILENAME__, __LINE__, __func__, ##__VA_ARGS__)
 | 
			
		||||
#define LOG_DEBUG(...) logger_log(stdout, LOG_LEVEL_DEBUG, __FILENAME__, __LINE__, __func__, ##__VA_ARGS__)
 | 
			
		||||
#define LOG_INFO(...)  logger_log(stdout, LOG_LEVEL_INFO , __FILENAME__, __LINE__, __func__, ##__VA_ARGS__)
 | 
			
		||||
#define LOG_WARN(...)  logger_log(stdout, LOG_LEVEL_WARN , __FILENAME__, __LINE__, __func__, ##__VA_ARGS__)
 | 
			
		||||
#define LOG_ERROR(...) logger_log(stderr, LOG_LEVEL_ERROR, __FILENAME__, __LINE__, __func__, ##__VA_ARGS__)
 | 
			
		||||
#define LOG_FATAL(...) logger_log(stderr, LOG_LEVEL_FATAL, __FILENAME__, __LINE__, __func__, ##__VA_ARGS__)
 | 
			
		||||
 | 
			
		||||
#endif //CONTROLLER_LOGGER_H
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -4,18 +4,12 @@
 | 
			
		|||
#include <logger.h>
 | 
			
		||||
 | 
			
		||||
#ifdef WIRING_PI_DEBUG
 | 
			
		||||
    #if WIRING_PI_DEBUG > 1
 | 
			
		||||
        #define LOG_WIRING_DEBUG(x, ...) LOG_DEBUG(x, ##__VA_ARGS__)
 | 
			
		||||
    #else
 | 
			
		||||
        #define LOG_WIRING_DEBUG(x, ...)
 | 
			
		||||
    #endif
 | 
			
		||||
    #define wiringPiSetup() LOG_DEBUG("wiringPi wiringPiSetup()\n")
 | 
			
		||||
    #define wiringPiSetupSys() LOG_DEBUG("wiringPi wiringPiSetupSys()\n")
 | 
			
		||||
    #define pinMode(x,y) LOG_DEBUG("wiringPi pinMode(%d, %d)\n", x, y)
 | 
			
		||||
    #define digitalWrite(x,y) LOG_DEBUG("wiringPi digitalWrite(%d, %d)\n", x, y)
 | 
			
		||||
 | 
			
		||||
    #define wiringPiSetup() LOG_WIRING_DEBUG("wiringPi wiringPiSetup()")
 | 
			
		||||
    #define wiringPiSetupSys() LOG_WIRING_DEBUG("wiringPi wiringPiSetupSys()")
 | 
			
		||||
    #define pinMode(x,y) LOG_WIRING_DEBUG("wiringPi pinMode(%d, %d)", x, y)
 | 
			
		||||
    #define digitalWrite(x,y) LOG_WIRING_DEBUG("wiringPi digitalWrite(%d, %d)", x, y)
 | 
			
		||||
 | 
			
		||||
    #define piFaceSetup(x) LOG_WIRING_DEBUG("wiringPi piFaceSetup(%d)", x)
 | 
			
		||||
    #define piFaceSetup(x) LOG_DEBUG("wiringPi piFaceSetup(%d)\n", x)
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#endif /* CONTROLLER_WIRING_DEBUG_H */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue