А чем так плохи приблизительные цифры? Сейчас IT по всему миру уходит от ультранадежных(и дорогостоящих) серверов-питомцев в пользу стада сущностей с пониженной ответственностью за сохранность данных. Зато с пачкой механизмов балансировки и отказоустойчивости чтобы сохранность данных таки обеспечить. И в этих условиях нормально терять метрики. Нормально предоставлять некий приблизительный результат вычислений. Чтобы "на глаз" можно было сказать сильно стадо поредело или же одна овца ногу подвернула. Сильно страдают пользователи от этого или один процент увидел 500ки. В современном ИТ допускается некоторое кратковременное пострадывание юзера. И приблизительные метрики тоже допускаются. Если хочется точности - метрики то сами ведь никак не искажены. Можно выдрать metric[range] из API и посчитать как надо, а не как авторы хайпожорного инструмента придумали
смотри,
для rate и т.п. приблизительные цифры ОК
а вот для Increase НЕТ
самый простой use case
тебе надо узнать сколько именно было ошибок в конкретную минуту, не сколько "ошибок в секунду"
а именно пик словить, что например хотя бы одна ошибка была
у тебя есть монотонный счетчик - кол-во ошибок
ты делаешь в prometheus
increase()
у тебя счетчик скакнул на +1
а ты получаешь цифру типа 1.1
и офигеваешь, потому что вроде как может быть либо 0 либо 1
другого по поведению метрики не дано... она целочисленная
и тебе надо бегать и целый день выискивать в документации почему так...
а оказывается просто аффтар / точнее ЛИДЕР проекта в свое время упоролся с экстраполяцией и increase знаете ли ли синтаксический сахар к rate()