Hello everyone,
I'm getting a weird error on a service behind an nginx both running in docker containers behind a WAF.
our service is a bussiness intelligence software which has a connection to an oracle db to create dashboards, charts and such.
all of those dashboards work perfectly fine when date constrains are set for a day/a week, however when we try to set date ranges to anything over a week, we get a 504 timeout error at EXACTLY 50 seconds.
NginX error logs show the following:
"2024/06/13 14:04:04 [error] 27#27: *18553 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 10.6.25.126, server: [server URL], request: "POST /datasource/samples?force=false&datasource_type=table&datasource_id=34 HTTP/1.1", upstream: "http://172.26.6.5:8088/datasource/samples?force=false&datasource_type=table&datasource_id=34", host: "[server URL]", referrer: "https://pergamino-ss.afip.gob.ar/explore/?form_data_key=GtuXw5sBYeE2_aTTWFGSOvHeXALM8a7aTOpwkG_eIoeZzXfAfD8yesDjlP8PMS9G&slice_id=126"2024/06/13 14:06:57 [error] 28#28: *18637 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 10.6.25.126, server: [server URL], request: "POST /datasource/samples?force=false&datasource_type=table&datasource_id=34%0A HTTP/1.1", upstream: "http://172.26.6.5:8088/datasource/samples?force=false&datasource_type=table&datasource_id=34%0A", host: "[server URL]"
- 16.6.25.126 is the WAF which is also the host to which the DNS points the service to, (the WAF internally redirects all traffic to the actual server).
- 172.26.6.5 is the IP of the docker container of the actual service inside the VM hosting the service and the nginx.
BOTH the application, and NginX have all possible timeout settings set at either 180 or 300 seconds timeouts:
uwsgi_read_timeout 300;
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
client_body_buffer_size 128K;
client_header_buffer_size 4k;
large_client_header_buffers 2 4k;
allow large uploads
client_max_body_size 1G;
client_body_timeout 300;
client_header_timeout 300;
keepalive_timeout 300;
keepalive_requests 600;
send_timeout 300;
Any help or ideas would be GREATLY appreciated.
Marcelo