PromQL-запрос для построения графика скорости входящих запросов - PullRequest
0 голосов
/ 18 февраля 2020

Я новичок в Прометее. Я использую NewCounterVe c для регистрации входящих HTTP-запросов. Я использовал это, основываясь на коде многих других людей, который я нашел на git хабе.

Предположим, что так определен мой метри c (в go)

httpRequests = prometheus.NewCounterVec(
    prometheus.CounterOpts{
        Name: "http_requests_total",
        Help: "Incoming http requests.",
    },
    []string{"path", "status"},
)

путь входящий URL-адрес и статус - это http-статус ответа. Какими будут мои запросы PromQL (для рисования графика) для

  1. Поступающих запросов в минуту
  2. Частота отказов на основе кода состояния http (код состояния> = 400)

Я пытался rate(http_requests_total[5m])[30m:1m] на основе это , но это не может быть показано на графике. Выдает ошибку Ошибка выполнения запроса: invalid expression type "range vector" for range query, must be Scalar or instant Vector

1 Ответ

1 голос
/ 18 февраля 2020

Поступающих запросов в минуту

rate(http_requests_total[5m]) * 60

Частота отказов на основе кода состояния http (код состояния> = 400)

rate(http_requests_total{status="[45].."}[5m])

Это, однако, fr agile, и ничего не вернется, если не было кодов состояния 4xx или 5xx.

...