From dcb85398f505481db3a33d35049584b82b1397b9 Mon Sep 17 00:00:00 2001 From: guowenxue <guowenxue@gmail.com> Date: Sat, 17 Jul 2021 23:10:13 +0800 Subject: [PATCH] update booster code for logger system and makefile --- booster/logger.c | 85 +++++++++++++----------------------------- 1 files changed, 26 insertions(+), 59 deletions(-) diff --git a/booster/logger.c b/booster/logger.c index d8f0e92..692635f 100644 --- a/booster/logger.c +++ b/booster/logger.c @@ -20,7 +20,7 @@ /* This library is not thread safe */ static logger_t *logger = NULL; -char *log_str[LOG_LEVEL_MAX + 1] = { "", "F", "E", "W", "N", "D", "I", "T", "M" }; +char *log_str[LOG_LEVEL_MAX + 1] = { "", "E", "W", "N", "D", "I", "M" }; #define LOG_TIME_FMT "%Y-%m-%d %H:%M:%S" @@ -32,8 +32,8 @@ if (sig == SIGHUP) { signal(SIGHUP, log_signal_handler); - log_fatal("SIGHUP received - reopenning log file [%s]", logger->file); - logger_reopen(); + log_err("SIGHUP received - reopenning log file [%s]", logger->file); + log_reopen(); } } @@ -81,65 +81,44 @@ /* log_size unit is KB */ -int logger_init(logger_t *log, char *log_file, int level, int log_size) +int log_open(logger_t *log, char *log_file, int level, int log_size) { - if( !log ) + struct sigaction act; + char *filemode; + + if(!log) { printf("ERROR: Invalid input arguments\n"); return -1; } - if( log_file ) - { - strncpy(log->file, log_file, FILENAME_LEN); - log->flag |= FLAG_LOGGER_FILE; - } - else - { - strncpy(log->file, DBG_LOG_FILE, FILENAME_LEN); - log->flag |= FLAG_LOGGER_CONSOLE; - } - - log->level = level; - log->size = log_size; - /* set static global $logger point to argument $log */ logger = log; - return 0; -} -int logger_open(void) -{ - struct sigaction act; - char *filemode; - - if(!logger) + /* use standard error as output */ + if( !log_file || log_file[0]=='\0' || !strcmp(log_file, LOG_STDERR)) { - printf("ERROR: logger not initialise\n"); - return -1; - } - - log_rollback_size = logger->size <= 0 ? LOG_ROLLBACK_NONE : logger->size*1024; /* Unit KiB */ - - if ('\0' == logger->file[0]) - { - printf("ERROR: Logger filename not set\n"); - return -1; - } - - if (!strcmp(logger->file, DBG_LOG_FILE)) - { - logger->fp = stderr; - log_rollback_size = LOG_ROLLBACK_NONE; + strncpy(logger->file, LOG_STDERR, FILENAME_LEN); logger->flag |= FLAG_LOGGER_CONSOLE; + logger->level = level; + logger->fp = stderr; + + log_rollback_size = LOG_ROLLBACK_NONE; goto OUT; } + strncpy(logger->file, log_file, FILENAME_LEN); + logger->flag |= FLAG_LOGGER_FILE; + logger->level = level; + logger->size = log_size; + + log_rollback_size = log_size <= 0 ? LOG_ROLLBACK_NONE : log_size*1024; /* Unit KiB */ + filemode = (log_rollback_size==LOG_ROLLBACK_NONE) ? "a+" : "w+"; logger->fp = fopen(logger->file, filemode); - if (NULL == logger->fp) + if ( !logger->fp ) { fprintf(stderr, "Open log file \"%s\" in %s failure: %s\n", logger->file, filemode, strerror(errno)); return -2; @@ -152,11 +131,10 @@ OUT: logger_banner("Initialize"); - return 0; } -void logger_close(void) +void log_close(void) { if (!logger || !logger->fp ) return; @@ -172,15 +150,13 @@ return ; } -int logger_reopen(void) +int log_reopen(void) { int rc = 0; char *filemode; if( !logger ) return -1; - - log_rollback_size = logger->size <= 0 ? LOG_ROLLBACK_NONE : logger->size*1024; /* Unit KiB */ if (logger->flag & FLAG_LOGGER_CONSOLE ) { @@ -191,7 +167,7 @@ if (logger->fp) { - logger_close(); + log_close(); filemode = log_rollback_size==LOG_ROLLBACK_NONE ? "a+" : "w+"; logger->fp = fopen(logger->file, filemode); @@ -210,15 +186,6 @@ return rc; } -void logger_term(void) -{ - if(!logger) - return ; - - logger_close(); - - logger = NULL; -} void logger_raw(const char *fmt, ...) { -- Gitblit v1.9.1