Как работает increase в Prometheus?

Для работы начал изучать мониторинг и метрики. Сейчас столкнулся с проблемой, что не могу никак понятно для себя найти объяснение того, как работает функция increase(). Перебрал много источников, но так и не смог понять, что это такое. Можете ли вы, простым языком и каким-нибудь примером, объяснить, что делает данная функция?


Ответы (2 шт):

Автор решения: luzrain

функция increase() возвращает разницу между точками во временном ряду.
Из значения последней точки вычитается значение первой, результат возвращается.

→ Ссылка
Автор решения: markalex

Функция increase() возвращает насколько счётчик (counter) увеличился за указанный промежуток.

В самом простом случае - это разница между текущим значением счётчика и значением в начале указанного промежутка. Если сброс счётчика присутствовал - функция вернёт насколько счётчик увеличился (увеличение от начал промежутка до сброса + увеличение с момента сброса)

Также под капотом increase() использует rate() и потом просто суммирует результаты за указанный промежуток. Поэтому результат может оказаться нецелочисленным, даже если значение счётчика всегда целочисленные.

Небольшой пример: выражения increase(node_cpu_seconds_total{mode="user"} [5m]) и node_cpu_seconds_total{mode="user"} - node_cpu_seconds_total{mode="user"} offset 5m возвращают похожие, но не идентичные результаты, даже в отсутствие сбросов. Демо.

→ Ссылка