diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 5bb854fcb..0f1ec886c 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -16,6 +16,7 @@ The following tip changes can be tested by building VictoriaMetrics components f ## v1.87.x long-time support release (LTS) * BUGFIX: prevent from slow [snapshot creating](https://docs.victoriametrics.com/#how-to-work-with-snapshots) under high data ingestion rate. See [this issue](https://github.com/VictoriaMetrics/VictoriaMetrics/issues/3551). +* BUGFIX: [vmauth](https://docs.victoriametrics.com/vmauth.html): suppress [proxy protocol](https://www.haproxy.org/download/2.3/doc/proxy-protocol.txt) parsing errors in case of `EOF`. Usually, the error is caused by health checks and is not a sign of an actual error. ## [v1.87.3](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.87.3) diff --git a/lib/netutil/tcplistener.go b/lib/netutil/tcplistener.go index e3288097c..900f20ed5 100644 --- a/lib/netutil/tcplistener.go +++ b/lib/netutil/tcplistener.go @@ -5,6 +5,7 @@ import ( "errors" "flag" "fmt" + "io" "net" "time" @@ -98,7 +99,9 @@ func (ln *TCPListener) Accept() (net.Conn, error) { if ln.useProxyProtocol { pConn, err := newProxyProtocolConn(conn) if err != nil { - proxyProtocolReadErrorLogger.Errorf("cannot read proxy proto conn for TCP addr %q: %s", ln.Addr(), err) + if !errors.Is(err, io.EOF) { + proxyProtocolReadErrorLogger.Errorf("cannot read proxy proto conn for TCP addr %q: %s", ln.Addr(), err) + } _ = conn.Close() continue }