Графит не графитирует ничего для диапазонов больше 7 часов
Мое текущее правило хранения выглядит так:
[whatever]
priority = 110
pattern = ^stats\.whatever\..*
retentions = 60:10080,600:262974
Если я правильно понимаю, это сэкономит 2 дня 1-минутных данных и 5 лет десятиминутных данных.
Я отправляю данные на графит в течение последних нескольких часов, и я вижу график этих данных, но только для диапазонов менее 7 часов. Если я попытаюсь визуализировать эти данные для диапазона, например, 1 день, то в результате граф не отображает одну точку данных.
Является ли это причиной моего правила хранения?
заблаговременно.
Ответы
Ответ 1
У меня была аналогичная проблема; для меня это были не правила хранения, а правила агрегации. По умолчанию мои счетчики назначались --agggregationMethod average
и -xFilesFactor 0.5
. Но мои данные были далеко не такими плотными, поэтому агрегатор отбрасывал мои данные на том основании, что не было статистически значимого образца.
В моем конкретном случае использования меня интересовало пиковое значение за некоторый период времени, поэтому я использовал whisper-resize.py
для перенастройки моей базы данных: --aggregationMethod max
, --xFilesFactor 0.0
дал мне поведение, которое я ожидал.
См. также storage-aggregation.conf
Ответ 2
У меня была такая же проблема. После того, как вы измените правила хранения, вам необходимо перезапустить carbon-cache.py. Если вы хотите сохранить данные, которые у вас есть, вам нужно запустить whisper-resize.py в ваших файлах шепота (.wsp).
Эта ссылка также должна помочь:
https://answers.launchpad.net/graphite/+question/140289
Однако в этой ссылке параметры, переданные в whisper-resize.py, находятся в неправильном порядке. Это должно быть whisper-resize.py <file> <retention rate>
Здесь полезная команда для изменения размера:
find /opt/graphite/storage/whisper -type f -name "*.wsp" -exec whisper-resize.py {} <retention rate> \;
Отрегулируйте его по мере необходимости.