From 8273ba47c13a04a388a7807fd45e78dc936b17cf Mon Sep 17 00:00:00 2001 From: 2xsec Date: Mon, 6 Aug 2018 11:23:41 +0900 Subject: [PATCH] log: function cleanups Signed-off-by: 2xsec --- src/lxc/log.c | 141 +++++++++++++++++++++++++------------------------- src/lxc/log.h | 6 +-- 2 files changed, 73 insertions(+), 74 deletions(-) diff --git a/src/lxc/log.c b/src/lxc/log.c index 5c114da50..ec0a4be33 100644 --- a/src/lxc/log.c +++ b/src/lxc/log.c @@ -127,13 +127,13 @@ static int log_append_syslog(const struct lxc_log_appender *appender, } syslog(lxc_log_priority_to_syslog(event->priority), - "%s%s %s - %s:%s:%d - %s" , - log_container_name ? log_container_name : "", - log_container_name ? ":" : "", - event->category, - event->locinfo->file, event->locinfo->func, - event->locinfo->line, - msg); + "%s%s %s - %s:%s:%d - %s" , + log_container_name ? log_container_name : "", + log_container_name ? ":" : "", + event->category, + event->locinfo->file, event->locinfo->func, + event->locinfo->line, + msg); free(msg); return 0; @@ -156,10 +156,10 @@ static int log_append_stderr(const struct lxc_log_appender *appender, #endif fprintf(stderr, "%s: %s%s", log_prefix, - log_container_name ? log_container_name : "", - log_container_name ? ": " : ""); + log_container_name ? log_container_name : "", + log_container_name ? ": " : ""); fprintf(stderr, "%s: %s: %d ", event->locinfo->file, - event->locinfo->func, event->locinfo->line); + event->locinfo->func, event->locinfo->line); vfprintf(stderr, event->fmt, *event->vap); fprintf(stderr, "\n"); @@ -167,7 +167,7 @@ static int log_append_stderr(const struct lxc_log_appender *appender, } /*---------------------------------------------------------------------------*/ -int lxc_unix_epoch_to_utc(char *buf, size_t bufsize, const struct timespec *time) +static int lxc_unix_epoch_to_utc(char *buf, size_t bufsize, const struct timespec *time) { int64_t epoch_to_days, z, era, doe, yoe, year, doy, mp, day, month, d_in_s, hours, h_in_s, minutes, seconds; @@ -315,16 +315,15 @@ static int log_append_logfile(const struct lxc_log_appender *appender, return 0; n = snprintf(buffer, sizeof(buffer), - "%s%s%s %s %-8s %s - %s:%s:%d - ", - log_prefix, - log_container_name ? " " : "", - log_container_name ? log_container_name : "", - date_time, - lxc_log_priority_to_string(event->priority), - event->category, - event->locinfo->file, event->locinfo->func, - event->locinfo->line); - + "%s%s%s %s %-8s %s - %s:%s:%d - ", + log_prefix, + log_container_name ? " " : "", + log_container_name ? log_container_name : "", + date_time, + lxc_log_priority_to_string(event->priority), + event->category, + event->locinfo->file, event->locinfo->func, + event->locinfo->line); if (n < 0) return n; @@ -493,23 +492,6 @@ static char *build_log_path(const char *name, const char *lxcpath) return p; } -void lxc_log_close(void) -{ - closelog(); - - free(log_vmname); - log_vmname = NULL; - - if (lxc_log_fd == -1) - return; - - close(lxc_log_fd); - lxc_log_fd = -1; - - free(log_fname); - log_fname = NULL; -} - /* * This can be called: * 1. when a program calls lxc_log_init with no logfile parameter (in which @@ -567,39 +549,6 @@ static int _lxc_log_set_file(const char *name, const char *lxcpath, int create_d return ret; } -int lxc_log_syslog(int facility) -{ - struct lxc_log_appender *appender; - - openlog(log_prefix, LOG_PID, facility); - if (!lxc_log_category_lxc.appender) { - lxc_log_category_lxc.appender = &log_appender_syslog; - return 0; - } - - appender = lxc_log_category_lxc.appender; - /* Check if syslog was already added, to avoid creating a loop */ - while (appender) { - if (appender == &log_appender_syslog) { - /* not an error: openlog re-opened the connection */ - return 0; - } - appender = appender->next; - } - - appender = lxc_log_category_lxc.appender; - while (appender->next != NULL) - appender = appender->next; - appender->next = &log_appender_syslog; - - return 0; -} - -inline void lxc_log_enable_syslog(void) -{ - syslog_enable = 1; -} - /* * lxc_log_init: * Called from lxc front-end programs (like lxc-create, lxc-start) to @@ -675,6 +624,56 @@ int lxc_log_init(struct lxc_log *log) return ret; } +void lxc_log_close(void) +{ + closelog(); + + free(log_vmname); + log_vmname = NULL; + + if (lxc_log_fd == -1) + return; + + close(lxc_log_fd); + lxc_log_fd = -1; + + free(log_fname); + log_fname = NULL; +} + +int lxc_log_syslog(int facility) +{ + struct lxc_log_appender *appender; + + openlog(log_prefix, LOG_PID, facility); + if (!lxc_log_category_lxc.appender) { + lxc_log_category_lxc.appender = &log_appender_syslog; + return 0; + } + + appender = lxc_log_category_lxc.appender; + /* Check if syslog was already added, to avoid creating a loop */ + while (appender) { + if (appender == &log_appender_syslog) { + /* not an error: openlog re-opened the connection */ + return 0; + } + appender = appender->next; + } + + appender = lxc_log_category_lxc.appender; + while (appender->next != NULL) + appender = appender->next; + appender->next = &log_appender_syslog; + + return 0; +} + +inline void lxc_log_enable_syslog(void) +{ + syslog_enable = 1; +} + /* * This is called when we read a lxc.log.level entry in a lxc.conf file. This * happens after processing command line arguments, which override the .conf diff --git a/src/lxc/log.h b/src/lxc/log.h index 448867752..734fbe177 100644 --- a/src/lxc/log.h +++ b/src/lxc/log.h @@ -431,14 +431,14 @@ ATTR_UNUSED static inline void LXC_##LEVEL(struct lxc_log_locinfo* locinfo, \ extern int lxc_log_fd; -extern int lxc_log_set_file(int *fd, const char *fname); extern int lxc_log_syslog(int facility); extern void lxc_log_enable_syslog(void); extern int lxc_log_set_level(int *dest, int level); -extern void lxc_log_set_prefix(const char *prefix); -extern const char *lxc_log_get_file(void); extern int lxc_log_get_level(void); extern bool lxc_log_has_valid_level(void); +extern int lxc_log_set_file(int *fd, const char *fname); +extern const char *lxc_log_get_file(void); +extern void lxc_log_set_prefix(const char *prefix); extern const char *lxc_log_get_prefix(void); extern void lxc_log_options_no_override(); #endif