]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
MINOR: peers: Add "log" directive to "peers" section.
authorFrédéric Lécaille <flecaille@haproxy.com>
Tue, 5 Nov 2019 08:57:45 +0000 (09:57 +0100)
committerWilly Tarreau <w@1wt.eu>
Wed, 6 Nov 2019 03:49:56 +0000 (04:49 +0100)
This patch is easy to review: let's call parse_logsrv() function to parse
"log" directive as this is already for other sections for proxies.
This enable us to log incoming TCP connections for the listeners for "peers"
sections.

Update the documentation for "peers" section.

doc/configuration.txt
src/cfgparse.c

index 0bb7313cd1d367d83edd328d3b7d0b1a0cb2c931..beb2726e7f4ecb7f121bf5a2caa98c4a965248c1 100644 (file)
@@ -2138,6 +2138,12 @@ default-server [param*]
 enable
   This re-enables a disabled peers section which was previously disabled.
 
+log <address> [len <length>] [format <format>] [sample <ranges>:<smp_size>]
+    <facility> [<level> [<minlevel>]]
+  "peers" sections support the same "log" keyword as for the proxies to
+  log information about the "peers" listener. See "log" option for proxies for
+  more details.
+
 peer <peername> <ip>:<port> [param*]
   Defines a peer inside a peers section.
   If <peername> is set to the local peer name (by default hostname, or forced
index eaad6c2cde936d72dd81e02a6d17b7122db9c488..2e200e885244bb5750af7a095b927501a69b5524 100644 (file)
@@ -714,6 +714,17 @@ int cfg_parse_peers(const char *file, int linenum, char **args, int kwm)
                }
                err_code |= parse_server(file, linenum, args, curpeers->peers_fe, NULL, 0);
        }
+       else if (strcmp(args[0], "log") == 0) {
+               if (init_peers_frontend(file, linenum, NULL, curpeers) != 0) {
+                       err_code |= ERR_ALERT | ERR_ABORT;
+                       goto out;
+               }
+               if (!parse_logsrv(args, &curpeers->peers_fe->logsrvs, (kwm == KWM_NO), &errmsg)) {
+                       ha_alert("parsing [%s:%d] : %s : %s\n", file, linenum, args[0], errmsg);
+                       err_code |= ERR_ALERT | ERR_FATAL;
+                       goto out;
+               }
+       }
        else if (strcmp(args[0], "peers") == 0) { /* new peers section */
                /* Initialize these static variables when entering a new "peers" section*/
                bind_line = peer_line = 0;