Используйте регулярное выражение в запросе увеличения прометея

Я использую grafana и prometheus для запроса нескольких метрик из разных сред и экземпляров / кластеров. Regex помогает мне уменьшить количество запросов на панели инструментов Grafana.

Например, вместо создания запроса для каждого экземпляра (иногда я не могу знать имена или количество экземпляров), я использую это:

{__name__=~"ReadUser:.*",account="dev",Function="Max"}

Таким образом, я получаю метрики из нескольких разных динамически создаваемых экземпляров, касающиеся операции чтения пользователя.

Конечно, я не могу использовать его в таком запросе:

increase(ReadUser:<instance-name>{account="dev",Function="TotalDuration"}[30s]) / ignoring(Function) increase(ReadUser:<instance-name>{account="dev",Function="Counter"}[30s])

Мой вопрос в том, как я могу использовать регулярное выражение, чтобы использовать только один запрос promql, чтобы показать результат этого запроса для всех доступных экземпляров (помните, что они динамически создаются и могут достигать довольно большого числа)


person 2bis    schedule 08.10.2020    source источник


Ответы (1)


Проще говоря: не добавляйте такие вещи, как имя экземпляра, в имя метрики / __name__. Если вы не можете изменить его в источнике, перепишите метки с конфигурацией перемаркировки метрики.

person trallnag    schedule 09.10.2020
comment
не очень полезно, но спасибо. названия показателей не будут изменены в ближайшее время - person 2bis; 11.10.2020
comment
Ну а доступ к prometheus.yml есть? Вы можете что-нибудь добавить к нему? - person trallnag; 11.10.2020