Histogram for application request duration
Tracks request execution time and counts for an application managed by GAS.
| Labels | Value | Purpose |
|---|---|---|
|
Time of execution in seconds |
|
This histogram is configured in the GAS configuration file (as.xcf) in the HISTOGRAM_BUCKETS element; for details about the bucket used to
measure application response times, see the
res.prometheus.rq_application_duration.buckets resource.
Metric examples:
fourjs_gas_application_request_duration_seconds_bucket{url="/ua/ft",application="demo",le="0.005"} 1
fourjs_gas_application_request_duration_seconds{url="/ua/r",application="demo",le="0.005"} 1
fourjs_gas_application_request_duration_seconds_sum{url="/ua/r",application="demo"} 0.034
fourjs_gas_application_request_duration_seconds_count{url="/ua/r",application="demo"} 4
Grafana
PromQL queries for percentile and average request duration are provided, as well as a
visualization example in Grafana.
- PromQL query
(percentile):
This query calculates the 90th percentile for the demo application.histogram_quantile(0.90,sum(rate(fourjs_gas_application_request_duration_seconds_bucket {application="demo"}[$__rate_interval])) by (le)) - PromQL query
(rate):
This query calculates the average request duration rate for the demo application.rate(fourjs_gas_application_request_duration_seconds_sum{application="demo"}[5m]) / rate(fourjs_gas_application_request_duration_seconds_count{application="demo"}[5m])Figure: Average request duration 