Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Measure service latency with Prometheus

I am new to Prometheus and Grafana. My primary goal is to get the response time per request.

For me it seemed to be a simple thing - but whatever I do I do not get the results I require.

I need to be able to analyse the service latency in the last minutes/hours/days. The current implementation I found was a simple SUMMARY (without definition of quantiles) which is scraped every 15s.

  1. Is it possible to get the average request latency of the last minute from my Prometheus SUMMARY?
  2. If YES: How? If NO: What should I do?

Currently I am using the following query:

rate(http_response_time_sum{application="myapp",handler="myHandler", status="200"}[1m])
/
rate(http_response_time_count{application="myapp",handler="myHandler", status="200"}[1m])

I am getting two "datasets". The value of the first is "NaN". I suppose this is the result from a division by zero.

(I am using spring-client).

like image 221
eventhorizon Avatar asked Nov 15 '17 10:11

eventhorizon


1 Answers

Your query is correct. The result will be NaN if there have been no queries in the past minute.

like image 198
brian-brazil Avatar answered Sep 18 '22 13:09

brian-brazil