nginxinc/nginx-prometheus-exporter

Enabling IPv6 causes Client.Timeout exceeded while awaiting headers since 0.9.0

J0WI opened this issue · 7 comments

J0WI commented

Describe the bug

nginx-prometheus-exporter 0.9.0 fails frequently:

net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

To reproduce Steps to reproduce the behavior:

  1. enable IPv6
  2. start a nginx and nginx-prometheus-exporter container
  3. run them for a while
  4. see error

Increasing the timeout or retries does not help.

Expected behavior It should work fine as with 0.7.0 or 0.8.0. I suspect that the base image changes introduced this regression. Maybe they can't handle IPv6 out of the box?

Your environment * Version of the Prometheus exporter: 0.9.0 * Version of Docker: 20.10.7 + IPv6 * Using NGINX

Aha! Link: https://nginx.aha.io/features/IC-293

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days.

J0WI commented

bump

I have a feeling this is related to IPv6
We have a future plan to properly support IPv6

Are you IPv6 alone? or dual stack?
And if dual stack is the IPv4 address being used.

J0WI commented

dual stack, both IPs used

Hi @J0WI

I know this issue is very old, but I tried to reproduce it but I didn't see the error. Is this still happening for you? Have you tried https://github.com/nginxinc/nginx-prometheus-exporter/releases/tag/v0.10.0 or https://github.com/nginxinc/nginx-prometheus-exporter/releases/tag/v0.11.0 since then?

If you're still experiencing this it might be worth trying the edge container since there have been quite a few changes. Also if you could share the flags that you use, it would help with reproducing 🙏

J0WI commented

Cannot reproduce this anymore.