Как хранить данные в графите с сохранением 100 мс?

Я использую графит для отображения статистики нашего приложения.

хранение schemas.conf

[stats]
pattern = ^stats\.
retentions = 1s:1h,1m:1d,1h:100d

хранение aggregation.conf

[stats]
pattern = ^stats.*
xFilesFactor = 0
aggregationMethod = sum

За секунду я посылаю данные 100 раз.

В приведенной выше конфигурации он принимает только одно значение каждую секунду.

Я хочу суммировать все 100 значений, отправленных в секунду, и сохранить их в эту секунду.

Как я могу агрегировать эти данные в графите?

Я пытался установить задержку 0,01 с:1 ч, но она не работает.

Есть ли способ хранить данные каждые 100 мс?

Я искал везде, но не нашел правильного решения.

0 ответов

Правильное решение будет использовать Graphite вместе со StatsD. StatsD агрегирует ваши нерегулярные данные / данные высокого разрешения и регулярно отправляет их в Graphite.

Имейте в виду, вы должны изменить свою клиентскую сторону, чтобы отправлять данные в statsd вместо графита.

Вы можете найти более подробную информацию здесь: https://github.com/statsd/statsd

Если у вас большое количество метрик, я рекомендую использовать его версию на C https://github.com/statsite/statsite

Другие вопросы по тегам