Как узнать количество временных рядов, хранящихся в Prometheus LevelDB

Я несу ответственность за обслуживание серверов Prometheus в нашей компании. Метрики, однако, предоставляются командами.

Есть ли способ узнать количество временных рядов, хранящихся в базе данных Prometheus? Мы используем хранилище данных LevelDB по умолчанию. Мне нужны эти значения, чтобы выяснить, нужно ли мне настроить параметры локального хранилища в наших экземплярах Prometheus.

Спасибо за вашу помощь.

6 ответов

Как насчет count({__name__=~".+"})?

Он возвращает количество временных рядов в базе данных. Я сравнил с количеством метрик, которые в настоящее время выставляются каждой целью путем списания вручную, и оно соответствует +/- 10%. Я думаю, что разница связана с некоторыми целями, которые у меня были в прошлом, и теперь они не в сети.

Просто потому, что я все время забываю и приходится это гуглить, а этот вопрос вверху. Согласно этому ответу, вероятно, будет разница между &count({__name__=~".+"})из-за различий в том, что они считают «активным», но если у вас нет больших различий в количестве показателей, я бы рекомендовалprometheus_tsdb_head_seriesпотому что, если у вас много метрик, запросы выполняются намного быстрее.

https://prometheusui.com:9090/status ---> Head Stats -> это даст вам полный статус.

После некоторых исследований и благодаря комментариям David B. я нашел решение, которое "работает для меня" ™

Чтобы узнать количество временных рядов, хранящихся в Prometheus, я использую эту команду в storage.local.path папка:
ls -l {{0..9},{a..f}}{{0..9},{a..f}} | grep -E "*.db$" | wc -l

Кроме того, в документации к Prometheus найдены некоторые метрики, которые могут помочь при решении проблем с памятью / оптимизации.

Возможно, это не самый сложный способ, но он дал мне числа, которые я искал.

Перейдите по этому URL-адресу:

https://ВАШ-ПРОМЕТЕЙ-UI:9090/tsdb-status

ИЛИ Запросите это:

prometheus_tsdb_head_series

ИЛИ запросите это:

count({__name__=~".+"}

ИЛИ вы также можете посчитать файлы вstorage.local.pathсls -l {{0..9},{a..f}}{{0..9},{a..f}} | grep -E "*.db$" | wc -lЯ не проверял этот.

Вы можете попробовать ({name= ~ ". +"}) На консоли Prometheus, чтобы получить полный временной ряд

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