4

We are running on GKE using a public-facing Nginx Ingress Controller exposed under a TCP Load Balancer which is automatically configured by Kubernetes.

The problem is that 0.05% of our requests have status code 499 (An Nginx unique status code which means that the client cancelled). Our P99 Latency on average is always below 100ms.

john
  • 425
  • 4
  • 12

2 Answers2

1

As per DerSkythe's answer.

My problem is solved by adding the following in the config map.

apiVersion: v1
kind: ConfigMap
data:
  http-snippet: |
    proxy_ignore_client_abort on;

See http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_ignore_client_abort

After turning this on, I have almost zero 499 errors!

I highly recommend trying this configuration if you are encountering the same problem.

GagandeepT
  • 260
  • 1
  • 10
john
  • 425
  • 4
  • 12
  • It solved my issue. My setup is a bit different, I am running NGINX containers via Kubernetes after migrating from DC/OS. I also had about 1% of all traffic drop with 499 errors. I am still not sure why the ignore client abort option clears the errors. I mean I hope I am not dropping proper connections. – Serban Cezar Apr 23 '20 at 09:01
0

This error code 499 relates to the clients browser closing the connections before a response is sent from the backends.