У меня есть счетчик stats.message.foo
и я хочу переместить его в stats.messages.foo
.
Я обновил свой код, чтобы заполнить новый счетчик, однако старый все еще существует.
Я прочитал все, что мне нужно сделать, чтобы удалить стат из графита, это удалить соответствующий шепот файл на диске, однако кажется, что в течение нескольких секунд после удаления wsp
он восстанавливается (без данных).
Это раздражает, если я хочу переименовать ключ, под которым хранятся данные, так как мне нужно запомнить, какой ключ является правильным.
Кто-нибудь знает, как навсегда удалить старый счетчик?
stats.message.foo
потому что что-то еще отправляет эту метрику. Я бы посмотрел на ваши настройки statsd.Ответы:
Причина, по которой так много людей борются с этой проблемой (включая меня), заключается в том, что statsd (в зависимости от его настроек) продолжает записывать данные в старую статистику (шепотные файлы) даже после удаления файла шепота (.wsp).
Проверьте свои настройки statsd в /etc/statsd/config.js (в Ubuntu). Пример настроек на https://github.com/etsy/statsd/blob/master/exampleConfig.js . Я бы порекомендовал установить deleteIdleStats в значение true, чтобы statsd не записывал статистику, когда они не получены.
Падение deleteIdleStats заключается в том, что Graphite теперь может иметь нулевые значения для определенной статистики. Это можно сделать на слое визуализации (я рекомендую Grafana).
У вас есть две возможности остановить регенерацию удаленных шепотных файлов:
service statsd restart
илиservice statsd restart
Чтобы удалить ненужные файлы wsp:
find pathToUnwantedStatistic -print
find pathToUnwantedStatistic -delete
источник
У меня была похожая проблема, когда записи все еще существовали в графите, хотя данные не были доступны. Я использую statsd, и там тоже не было метрик. Оказывается, мне пришлось удалить эти папки в дополнение к файлам WSP.
Мой точный случай, я использовал имя машины в качестве префикса для statsd. Carbon создал папку для каждой из машин, например, в / opt / graphite / storage / whisper / stats / ip-0A215A08, где он сохранил wsp для моих метрик. Из-за этого, после того как я удалил файлы wsp, у меня все еще была куча «папок» в Graphite без каких-либо данных, которые все еще отображались в пользовательском интерфейсе.
Проверяет на углерод / графит
На statsd (если вы его используете) убедитесь, что больше нет индикаторов, таймеров или счетчиков для метрик, от которых вы хотите избавиться. Для этого вы также можете использовать telnet в своем экземпляре (порт по умолчанию 8126) и проверить метрики с помощью соответствующих команд интерфейса администратора, а не завершать процесс.
источник
Я была такая же проблема. Я смог удалить каталог, сначала убив работающий сервер StatsD. Возможно, это та же проблема, что и у вас.
pkill statsd
источник
Ни один из ответов выше не помог в моем случае. Я нашел это в stackoverflow, которое мне помогло: /programming/15501677/deleted-empty-graphite-whisper-files-automatics-re-generating#answer-20011928
источник
Я согласен с другими, что что-то должно отправлять старую метрику.
В идеале вы должны решить проблему на своем клиенте, чтобы решить эту проблему, но вы также можете отклонить эту метрику на стороне сервера с помощью функции черного списка шепота .
Сделать это:
USE_WHITELIST=True
в/opt/carbon/conf/carbon.conf
/opt/carbon/conf/blacklist.conf
источник