X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Flogfile.c;h=63448cb6c4e9f61cc611c71ed2c37840d160e17e;hb=aee87d9c1665ca8823c7489bfc9900ff12e0e177;hp=60fb5d9202ecfc5e5d9ddc2252820732e5586433;hpb=efa4700ad47969749b0fca622294fd006b2d7cb8;p=collectd.git diff --git a/src/logfile.c b/src/logfile.c index 60fb5d92..63448cb6 100644 --- a/src/logfile.c +++ b/src/logfile.c @@ -53,23 +53,12 @@ static int config_keys_num = STATIC_ARRAY_SIZE (config_keys); static int logfile_config (const char *key, const char *value) { if (0 == strcasecmp (key, "LogLevel")) { - if ((0 == strcasecmp (value, "emerg")) - || (0 == strcasecmp (value, "alert")) - || (0 == strcasecmp (value, "crit")) - || (0 == strcasecmp (value, "err"))) - log_level = LOG_ERR; - else if (0 == strcasecmp (value, "warning")) - log_level = LOG_WARNING; - else if (0 == strcasecmp (value, "notice")) - log_level = LOG_NOTICE; - else if (0 == strcasecmp (value, "info")) + log_level = parse_log_severity(value); + if (log_level < 0) { log_level = LOG_INFO; -#if COLLECT_DEBUG - else if (0 == strcasecmp (value, "debug")) - log_level = LOG_DEBUG; -#endif /* COLLECT_DEBUG */ - else - return 1; + ERROR ("logfile: invalid loglevel [%s] defaulting to 'info'", value); + return (1); + } } else if (0 == strcasecmp (key, "File")) { sfree (log_file); @@ -96,7 +85,7 @@ static void logfile_print (const char *msg, int severity, cdtime_t timestamp_time) { FILE *fh; - int do_close = 0; + _Bool do_close = 0; struct tm timestamp_tm; char timestamp_str[64]; char level_str[16] = ""; @@ -166,8 +155,11 @@ static void logfile_print (const char *msg, int severity, else fprintf (fh, "%s%s\n", level_str, msg); - if (do_close != 0) + if (do_close) { fclose (fh); + } else { + fflush(fh); + } } pthread_mutex_unlock (&file_lock);