Метри c единиц, отсутствующих в метаданных Prometheus - PullRequest
0 голосов
/ 19 июня 2020

Я столкнулся с этой проблемой во время работы над экспортером , который я написал в Python, используя клиентский модуль Prometheus . Некоторые из моих пользовательских метрик измеряют память в байтах, поэтому я определяю метрику c в моем экспортере:

NODES_MEM_FREE = GaugeMetricFamily('slurm_nodes_mem_free', 'Amounts of free memory allocated on nodes in the cluster ...', labels=self.labels, unit='bytes')

(полный код здесь )

unit явно указан как «байты», который распознается клиентом Prometheus, потому что метрич. c в конечном итоге отображается в конечной точке /metrics как slurm_nodes_mem_free_bytes. Однако, когда я проверяю вывод на /api/v1/metadata на моем сервере Prometheus, модуль пуст, ie.:

"slurm_nodes_mem_free_bytes":[{"type":"gauge","help":"Amounts of free memory allocated on nodes in the cluster grouped by cluster, partition","unit":""}]

Сначала я подумал, что проблема с клиентом Python, но потом я заметил, что каждая метрика c в метаданных содержит "unit":"", включая внутренние метрики Prometheus, которые поставляются с пакетом. Это отсутствующая функция или, может быть, что-то в настройках моего хоста Prometheus?

Я использую:

  • Prometheus версии 2.19.0, дата сборки 20200609-10: 29: 59 ;
  • Прометей Python Версия клиента 0.8.0.
...