Я просто сталкиваюсь с этой проблемой, как сопоставить фактическую метрику пути / тега с соответствующим хэшированным wsp-файлом.
Не думаю, что вы можете вычислить фактическое имя метрики из хеша, ноВы можете сделать наоборот, используя методы кодирования графита.
Я быстро написал скрипт Python только для лабораторных целей:
- Он может принимать несколько имен метрик в параметрах и возвращает отображение
Просто войдите в свой хост графита и создайте скрипт Python в / opt / graphite / webapp / graphite / tags
#!/opt/graphite/bin/python3
import sys
from utils import TaggedSeries
for line in sys.stdin:
paths = line.split()
for path in paths:
# Normalize first
parsed = TaggedSeries.parse(path)
print( path + " -> /opt/graphite/storage/whisper/" + TaggedSeries.encode(parsed.path,'/',True) + ".wsp")
Затем вы можете передать список метрик:
# echo "users.count;server=s1" |python mapper.py
users.count;server=s1 -> /opt/graphite/storage/whisper/_tagged/b6c/c91/b6cc916d608e4b145b318669606e79118cc41d316f96735dd43621db4fd2bcaf.wsp
Вы также можете получить все свои метки с метками и сгенерировать файл, который позже сможете добавить в скрипт.В этом примере я получаю все метрики, связанные с тегом «сервер»:
# curl -s "http://localhost/tags/findSeries?expr=server=~." | sed s/"\", \""/\\n/g > my_metrics
Затем следите за вашими метриками:
# cat my_metrics | python mapper.py
Это отправная точка.Оттуда вы можете легко сделать несколько простых сценариев для удаления файлов WSP, например, те, которые не обновлялись месяц назад на примере.
графит