From: Willy Tarreau Date: Thu, 31 May 2012 17:39:23 +0000 (+0200) Subject: BUG/MINOR: log: don't report logformat errors in backends X-Git-Tag: v1.5-dev12~159 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=99a7ca2fa6faee1397bcbc503032ecb9b0ffb331;p=thirdparty%2Fhaproxy.git BUG/MINOR: log: don't report logformat errors in backends Logs have always been ignored by backends, do not report useless warnings there. --- diff --git a/src/cfgparse.c b/src/cfgparse.c index a45acb15d1..fe39894014 100644 --- a/src/cfgparse.c +++ b/src/cfgparse.c @@ -1539,6 +1539,14 @@ int cfg_parse_listen(const char *file, int linenum, char **args, int kwm) curproxy->monitor_uri_len = defproxy.monitor_uri_len; if (defproxy.defbe.name) curproxy->defbe.name = strdup(defproxy.defbe.name); + + /* get either a pointer to the logformat string or a copy of it */ + curproxy->logformat_string = defproxy.logformat_string; + if (curproxy->logformat_string && + curproxy->logformat_string != default_http_log_format && + curproxy->logformat_string != default_tcp_log_format && + curproxy->logformat_string != clf_http_log_format) + curproxy->logformat_string = strdup(curproxy->logformat_string); } if (curproxy->cap & PR_CAP_BE) { @@ -1563,14 +1571,6 @@ int cfg_parse_listen(const char *file, int linenum, char **args, int kwm) LIST_ADDQ(&curproxy->logsrvs, &node->list); } - /* get either a pointer to the logformat string or a copy of it */ - curproxy->logformat_string = defproxy.logformat_string; - if (curproxy->logformat_string && - curproxy->logformat_string != default_http_log_format && - curproxy->logformat_string != default_tcp_log_format && - curproxy->logformat_string != clf_http_log_format) - curproxy->logformat_string = strdup(curproxy->logformat_string); - curproxy->uniqueid_format_string = defproxy.uniqueid_format_string; if (curproxy->uniqueid_format_string) curproxy->uniqueid_format_string = strdup(curproxy->uniqueid_format_string); @@ -6223,6 +6223,14 @@ out_uri_auth_compat: } /* compile the log format */ + if (!(curproxy->cap & PR_CAP_FE)) { + if (curproxy->logformat_string != default_http_log_format && + curproxy->logformat_string != default_tcp_log_format && + curproxy->logformat_string != clf_http_log_format) + free(curproxy->logformat_string); + curproxy->logformat_string = NULL; + } + if (curproxy->logformat_string) parse_logformat_string(curproxy->logformat_string, curproxy, &curproxy->logformat, curproxy->mode);