Метрическая сумма метки в ставке или ярости - PullRequest
0 голосов
/ 01 ноября 2019

Я вычисляю загрузку ЦП процесса процессом-экспортером, но у него есть две разные метки в одной метрике, например:

namedprocess_namegroup_cpu_seconds_total{groupname="(sd-pam)",instance="localhost:9256",job="process_exporter",mode="system"}
namedprocess_namegroup_cpu_seconds_total{groupname="(sd-pam)",instance="localhost:9256",job="process_exporter",mode="user"}

мне нужно, чтобы две из них имели% ЦПиспользование процесса.

Я пытался с этим, но код ничего не показывает

topk(5,
rate(namedprocess_namegroup_cpu_seconds_total{groupname=~"$processes",instance="$host",mode="user"}[20s]) + 
rate(namedprocess_namegroup_cpu_seconds_total{groupname=~"$processes",instance="$host",mode="system"}[20s])
or 
(
irate(namedprocess_namegroup_cpu_seconds_total{groupname=~"$processes",instance="$host",mode="user"}[5m]) +
irate(namedprocess_namegroup_cpu_seconds_total{groupname=~"$processes",instance="$host",mode="system"}[5m])))

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

topk(5,
rate(namedprocess_namegroup_cpu_seconds_total{groupname=~"$processes",instance="$host",mode="system"}[20s]) + 
rate(namedprocess_namegroup_cpu_seconds_total{groupname=~"$processes",instance="$host",mode="system"}[20s])
or 
(
irate(namedprocess_namegroup_cpu_seconds_total{groupname=~"$processes",instance="$host",mode="system"}[5m]) +
irate(namedprocess_namegroup_cpu_seconds_total{groupname=~"$processes",instance="$host",mode="system"}[5m])))

Что мне нужно сделать, чтобы получить сумму два из этого, спасибо.

1 Ответ

1 голос
/ 01 ноября 2019

Вы можете использовать регулярные выражения при сопоставлении меток для агрегирования двух временных рядов. Это выглядело бы примерно так:

sum (rate (namedprocess_namegroup_cpu_seconds_total {groupname = ~ "$ процессов", экземпляр = "$ host", mode = ~ "system | user"} [1m])) by (имя группы, экземпляр)

Вышеприведенное дает вам суммарный ЦП, использованный system и user, агрегированный по имени группы и экземпляру.

...