Добавление двух значений в Прометей - PullRequest
0 голосов
/ 16 января 2020

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

(probe_ssl_earliest_cert_expiry{job="SSL-expiry"} - time() < 86400 * 738 )*1000 + (node_time_seconds*1000)

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

enter image description here

1 Ответ

1 голос
/ 17 января 2020

Вы получите пустой результат, если метрики не совпадают. Причина в том, что для бинарного оператора vector1 <op> vector2

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

Вы должны по крайней мере добавить on() или ignoring() векторное ключевое слово , указывающее метки (имена), для которых (имя и) значение матч. Возможно, вам придется добавить инструкцию группировки, если у вас есть совпадение один ко многим.

Заполните ??? в следующем выражении так, чтобы совпадение метки:

(probe_ssl_earliest_cert_expiry{job="SSL-expiry"} - time() < 86400 * 738 )*1000 + ON(???) (node_time_seconds*1000)
...