Как настроить агрегацию данных в Graphite?

Приветствую всех. Стоит задача прилепить мониторинг к одному приложению. Есть штука, которая шлёт метрики, с этим все хорошо.
Но есть параметр, который необходимо хранить не так, как все остальное. А именно: количество запросов. Т.е. прилетает запрос, обрабатывается и в Graphite отправляются следующие метрики:
1) время, потраченное на внешний запрос;
2) время работы приложения
3) сам факт запуска приложения

Мне в этом Graphite нужно каким-то макаром посчитать количество этих запусков. Я уже и schemas настроил и aggregation тоже, но блин какого черта он не может мне сделать то, что я от него хочу?
Сам факт запуска фиксируется так: отсылается просто единица в опр. метрику и все. Мне потом допустим нужно посчитать количество этих единиц каждый час и выводить это на графике, но он разумеется не выводит.

storage-schemas.conf
# Schema definitions for Whisper files. Entries are scanned in order,
# and first match wins. This file is scanned for changes every 60 seconds.
#
#  [name]
#  pattern = regex
#  retentions = timePerPoint:timeToStore, timePerPoint:timeToStore, ...

# Carbon's internal metrics. This entry should match what is specified in
# CARBON_METRIC_PREFIX and CARBON_METRIC_INTERVAL settings
[carbon]
pattern = ^carbon\.
retentions = 60:90d

[app]
pattern = ^app\.api\.*
retentions = 10s:10m,10m:30d,60m:1y


storage-aggregation.conf
[collectd]
pattern = ^collectd\.
xFilesFactor = 0.7
aggregationMethod = max

[count]
pattern = \.count$
xFilesFactor = 0
aggregationMethod = sum

[default]
pattern = .*
xFilesFactor = 0.5
aggregationMethod = average


Как мне настроить его или же какие функции применить к метрике уже на графике, чтобы он посчитал количество этих единичек за опр. период времени (это зависит от масштаба графика и никак в конфигах или где бы то ни было еще не должно указываться)?
Функции, которые я применяю к этой метрике выдают полный бред. Тот же countSeries, sumSeries, hitcount и т.д.

Вообще я удивлен. Так мало информации про этот Graphite. Везде пишут, что он такой весь масштабируемый и простой, что вот прям бери и радуйся. Везде пишут про его настройку в разных стеках и окружениях, НО никто не описывает как решаются те или иные проблемы, нет никаких примеров. В общем прошу помочь, у меня уж очень сильно от него пригорело за последние дни, т.к. не могу я при помощи него решить такую простую задачу.
  • Вопрос задан
  • 682 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Mahabharata
Столкнулся с аналогичной в своей сути проблемой.
Условно отправляю несколько единиц подряд и хочу видеть на графике общее количество этих единиц за период времени. БОЛТ :)
Сначала игрался с функциями в самом графите (графане), потом докопался до настроек в карбоне - игрался ими. Ничего не вышло.
Потом на офф.ветке карбона в Гите мне вставили мозг, что карбон+графит - представляет собой базу данных временных рядов с фиксированным интервалом. Т.е. при поступлении нескольких событий в период времени - они просто перезаписываются. Ну и насоветовали копать в сторону statsd.
Сижу плАчу, т.к. у меня Debian, а пакетов под дебиан готовых нет, да плюс к тому - оно работает на node.js
Проблему пока так и не решил, так что если у кого-то из четырёх подписчиков на эту тему есть ответ - буду искренне благодарен, если поделитесь :)
Всем добра!
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы