Прометей - Как включить комментарии в метрики

Я хочу добавить динамические комментарии к показателям, которые дают некоторую информацию об услуге. Что-то вроде версии ОС, версии ядра и т. Д. Как я могу включить это в тип метрики Guage. Я могу добавить HELP и TYPE, но не версию ОС.

**OS version is xxxx**

# HELP http_request_duration_seconds A histogram of the request duration.
# TYPE http_request_duration_seconds histogram

person ambikanair    schedule 04.04.2017    source источник


Ответы (1)


Какую бы дополнительную информацию вы ни хотели добавить поверх метрики, добавьте ее как размеры (ярлыки на жаргоне Прометея). Таким образом, одни и те же метрики могут использоваться во всей вашей инфраструктуре, но вы можете нарезать их как хотите. например, метрика CPU_usage_percent может быть дополнена измерением cloud_zone, чтобы указать, к какому облаку она принадлежит:

CPU_usage_percent{cloud_zone:”NYC”, application_name:”video-server”}, 5, 1487578310 //example of a metric from zone NYC

а затем вы можете нарезать его в Prometheus с такими запросами, как:

CPU_usage_percent{cloud_zone="NYC"}

и получайте только те показатели, которые вам нужны. или их сумма / среднее / и т. д. в смысле, они самодокументируются.

Я беззастенчиво указываю вам на мою статью , где это объясняется более подробно.

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

kernel_version 0 {ip_addr:”1.1.1.1”, version:"the actual kernel value"}

РЕДАКТИРОВАТЬ: как добавить размеры с помощью golang_client: обратитесь к этому коду - он показывает, как добавлять метки, а затем заполнять их (в строке 68) - https://github.com/prometheus/client_golang/blob/master/prometheus/examples_test.go#L51

person FuzzyAmi    schedule 04.04.2017
comment
и если вам интересно, как именно это сделать, нам нужно знать, как вы экспортируете метрики. один из вариантов - добавить собственные метрики с помощью Telegraf. - person FuzzyAmi; 04.04.2017
comment
Я использую client_golang и экспортирую с использованием типа метрики Guage. Могу я узнать, как это можно сделать с помощью встроенной функциональности Guage. Прямо сейчас у меня есть что-то вроде этого dockerVer = prometheus.NewGauge (prometheus.GaugeOpts {Name: docker_version_latency, Help: Latency of docker version command.,}) Мне также нужно добавить дополнительную информацию в раздел комментариев. Скажите, #Info On Версия ОС: xxxxx # HELP docker_version_latency Задержка команды версии докера. # TYPE docker_version_latency gauge docker_version_latency 35.9 - person ambikanair; 05.04.2017
comment
Я не знаю, как редактировать комментарии, но, как объяснялось выше, вы можете добавлять параметры (или ярлыки) к показателям. Я отредактировал свой ответ, включив ссылку на пример для клиента golang. - person FuzzyAmi; 05.04.2017