Technologies/Prometheus/traefik.entrypoint.requests.total
PrometheusPrometheusMetric

traefik.entrypoint.requests.total

Total requests at entrypoint
Dimensions:None

Technical Annotations (68)

Configuration Parameters (22)
traefik.http.routers.<name>.rulerecommended: Host(`app.example.com`)
Must use backticks and match exact request Host header
traefik.http.routers.<name>.entrypointsrecommended: websecure
Must match where traffic actually arrives (web vs websecure)
metrics.prometheus.entryPointrecommended: metrics
defines the entrypoint name for exposing metrics
entryPoints.metrics.addressrecommended: :8082
port where Prometheus metrics are exposed
metrics.prometheus.headerLabels
defines custom labels from request headers; must use valid Prometheus label names
entrypoints.<name>.transport.keepalivemaxrequestsrecommended: 1000
Maximum requests per keep-alive connection; 0 means unlimited
entrypoints.<name>.transport.keepalivemaxtimerecommended: 90s
Maximum duration per keep-alive connection; 0 means unlimited
entrypoints.<name>.http2.maxconcurrentstreamsrecommended: 250-1000
Maximum parallel requests per HTTP/2 connection
entrypoints.<name>.http.maxheaderbytesrecommended: 1048576
Maximum request header size in bytes; increase if 431 errors occur
deployment.lifecycle.preStop.exec.commandrecommended: ["/bin/sh", "-c", "sleep 90"]
Delays pod termination to allow AWS NLB deregistration to complete
service.beta.kubernetes.io/aws-load-balancer-healthcheck-protocolrecommended: http
Enables active health checks instead of passive connection monitoring
service.beta.kubernetes.io/aws-load-balancer-healthcheck-portrecommended: 9000
Traefik internal API port for health endpoint
service.beta.kubernetes.io/aws-load-balancer-healthcheck-pathrecommended: /ping
Traefik health check endpoint
service.beta.kubernetes.io/aws-load-balancer-healthcheck-unhealthy-thresholdrecommended: 2
Number of failed checks before marking target unhealthy
service.beta.kubernetes.io/aws-load-balancer-healthcheck-intervalrecommended: 5
Health check interval in seconds
service.beta.kubernetes.io/aws-load-balancer-healthcheck-timeoutrecommended: 3
Health check timeout in seconds
respondingTimeouts.readTimeoutrecommended: p90 to p99 request duration
Forces connection closure after timeout period
respondingTimeouts.writeTimeoutrecommended: p90 to p99 request duration
Prevents indefinite connection hold by slow clients
respondingTimeouts.idleTimeoutrecommended: p90 to p99 request duration
Closes idle keepalive connections automatically
entryPoints.{name}.transport.respondingTimeouts.readTimeoutrecommended: 15s in example; increase for services with large request bodies (>1MiB)
Timeout for reading entire request including body; too low causes legitimate slow uploads to fail with misleading HTTP 499
experimental.fastProxyrecommended: enabled in example
Experimental feature that changes timeout error representation from HTTP 499 to HTTP 504
reusePortrecommended: false
Disable if experiencing TCP connection failures on Linux
Error Signatures (13)
404 page not foundhttp status
431http status
Empty reply from serverlog pattern
curl: (52) Empty reply from servererror code
accept tcp [::]:8443: use of closed network connectionlog pattern
503http status
499http status
499 Client Closed Requestlog pattern
context canceledlog pattern
504http status
504 Gateway Timeoutlog pattern
Error while writing request error="read tcplog pattern
i/o timeoutlog pattern
CLI Commands (8)
docker exec -it traefik sh -lc 'wget -qO- http://127.0.0.1:8080/api/http/routers'diagnostic
docker inspect app --format '{{json .Config.Labels}}' | jq -r 'to_entries[] | "\(.key)=\(.value)"' | sortdiagnostic
curl -sS -D- -o /dev/null -H 'Host: app.example.com' http://127.0.0.1/diagnostic
docker compose configdiagnostic
curl http://traefik-metrics.traefik:8082/metrics | grep traefik_service_requests_totaldiagnostic
kubectl port-forward -n traefik svc/traefik-metrics 8082:8082diagnostic
curl localhost:8082/metricsdiagnostic
while true; do curl https://my.example.host/; sleep 1; donediagnostic
Technical References (25)
EntryPointcomponentRoutercomponentHost()conceptYAMLconceptprometheus@internalcomponentkeep-aliveprotocolHTTP/2protocolHTTP/2 streamsconceptHTTP 431error codeAWS Network Load BalancercomponentpreStop lifecycle hookconceptpod deregistrationconcept/pingfile pathHEAD requestsprotocolkeepaliveprotocolentrypointcomponentHTTP/3protocolQUICprotocol0-RTTprotocolearly dataconceptentryPointcomponentrespondingTimeoutsconceptreadTimeoutconceptfastProxycomponentSO_REUSEPORTcomponent
Related Insights (14)
Router rule mismatch causes persistent 404s despite healthy containerscritical
High 5xx error rate indicating backend or routing failurescritical
Metrics endpoint not accessible preventing Prometheus scrapingwarning
Invalid Prometheus label names prevent all metric exportcritical
Keep-alive connections unlimited by default cause resource leakswarning
HTTP/2 concurrent stream limit causes request queueingwarning
Large request headers rejected with 431 status codewarning
Pod termination before NLB deregistration causes dropped requestswarning
Client connections remain open due to keepalives or incomplete readswarning
Long-lived connections prevent load distribution to scaled Traefik instanceswarning
IP allowlist bypass via HTTP/3 0-RTT with spoofed addressescritical
Slow client request bodies exceeding readTimeout logged as HTTP 499 Client Closed Requestwarning
fastProxy enabled changes readTimeout violations to HTTP 504 Gateway Timeoutwarning
Linux kernel bug causes TCP connection failures with reusePortwarning