Technologies/Traefik/traefik.service.request.duration
TraefikTraefikMetric

traefik.service.request.duration

Request duration at service
Dimensions:None
Available on:PrometheusPrometheus (1)DatadogDatadog (1)Native (1)
Interface Metrics (3)
PrometheusPrometheus
Request processing duration histogram for a service
Dimensions:None
DatadogDatadog
Request processing duration at the service level
Dimensions:None
Native
Request processing duration at service
Dimensions:None

Technical Annotations (45)

Configuration Parameters (15)
traefik.docker.networkrecommended: <shared_network_name> (e.g., traefik_proxy)
Docker Compose label that explicitly specifies which network Traefik should use for service discovery when container is attached to multiple networks
ADVERTISE_IPrecommended: Internal IP address (e.g., https://192.168.0.100:32400/) rather than external domain
Plex environment variable that may reduce hairpin NAT reliance
metrics.prometheus.bucketsrecommended: [0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1.0, 2.5, 5.0, 10.0]
Histogram buckets for latency distribution measurement
accessLog.filters.minDurationrecommended: 10ms
logs only requests exceeding this duration for performance analysis
serversTransport.forwardingTimeouts.idleConnTimeoutrecommended: shorter than upstream timeout (e.g., 3s if upstream is 5s)
Controls how long Traefik keeps idle connections to upstream servers open
serversTransport.maxIdleConnsPerHostrecommended: default (not -1)
Setting to -1 disables keep-alive entirely, causing performance issues
retry.attemptsrecommended: 3-5
Maximum retry attempts to bound total duration
retry.initialIntervalrecommended: 100ms-200ms
Initial backoff interval between retries
responseForwarding.flushIntervalrecommended: 100ms
Timeout for individual backend request attempts
respondingTimeouts.readTimeoutrecommended: p90-p99 percentile
Start at p90 for diagnosis, tune to p99 for production
respondingTimeouts.writeTimeoutrecommended: p90-p99 percentile
Start at p90 for diagnosis, tune to p99 for production
respondingTimeouts.idleTimeoutrecommended: p90-p99 percentile
Start at p90 for diagnosis, tune to p99 for production
entryPoints.*.transport.respondingTimeouts.readTimeoutrecommended: 600s
Maximum duration for reading request including body for large uploads
entryPoints.*.transport.respondingTimeouts.idleTimeoutrecommended: 600s
Maximum duration an idle connection remains open during large uploads
entryPoints.*.transport.respondingTimeouts.writeTimeoutrecommended: 600s
Maximum duration for writing response for large file operations
Error Signatures (2)
504 Gateway Timeouthttp status
502 Bad Gatewayhttp status
CLI Commands (1)
docker-compose up -d --force-recreate backenddiagnostic
Technical References (27)
Docker providercomponentservice discoveryconceptapache 32bitcomponentactivemqcomponentcronjobcomponentlog rotationconceptdisk I/OcomponentRound Robinconceptload balancingconceptdeadlockconceptsynchronizationconceptPuma 6 chipsetcomponenthairpin NATconceptloopback functionalityconceptlatencyconceptrequest durationconcepterror ratiosconceptServersTransportcomponentforwardingTimeoutscomponentkeep-aliveprotocolp50conceptp90conceptp99conceptDocker SwarmcomponentMTUconceptentryPointscomponentrespondingTimeoutscomponent
Related Insights (16)
Traefik 504 Gateway Timeout after backend container restart on multiple networkscritical
Timeouts occur when proxying to Apache backend despite backend capacitywarning
Log rotation background jobs cause periodic response time spikeswarning
Disk I/O bottleneck delays all requests globallycritical
Single backend server failure causes partial user impact in load-balanced setupwarning
Code deadlocks from excessive synchronization cause service outagescritical
Router loopback bug causes 100x latency increase when accessing Traefik via external domain from internal networkcritical
High P95 latency exceeds acceptable thresholdswarning
High request latency at p99 degrading user experiencewarning
Uptime-based alerts waste debugging time compared to latency spike alertsinfo
Monitoring raw traffic totals delays detection of production health issuesinfo
Idle timeout mismatch between Traefik and upstream causes 502 errorscritical
Unbounded retry configuration extends request latency indefinitelywarning
Timeout configuration should be based on request duration percentilesinfo
Traefik reports significantly higher request duration than backend servicewarning
Large file uploads fail due to default Traefik timeout valueswarning