В терминах Deckhouse Prom++, эндпоинт, с которого можно собирать метрики, называется экземпляром (instance) — как правило, это один рабочий процесс.
Набор экземпляров с одинаковым назначением — например, реплики одного и того же процесса, используемые для масштабирования или обеспечения отказоустойчивости — называется задачей (job).
Пример задачи сервера API с четырьмя репликами-экземплярами:
- job: `api-server`
- instance 1: `1.2.3.4:5670`
- instance 2: `1.2.3.4:5671`
- instance 3: `5.6.7.8:5670`
- instance 4: `5.6.7.8:5671`Автоматически создаваемые лейблы и временные ряды
Когда Deckhouse Prom++ опрашивает целевой эндпоинт (target), он автоматически добавляет к собранным временным рядам несколько служебных лейблов, которые помогают идентифицировать источник данных:
job— имя задачи, которой принадлежит целевая система согласно настройке;instance— часть URL-адреса целевого сервиса в формате<host>:<port>, с которого были собраны данные.
Если любой из этих лейблов (job или instance) уже присутствует в исходных данных, поведение определяется настройкой honor_labels.
Дополнительные подробности можно найти в разделе настройки сбора данных (scraping).
При каждом сборе данных (scraping) экземпляра Deckhouse Prom++ создает несколько дополнительных временных рядов:
up{job="<job-name>", instance="<instance-id>"}— равен1, если экземпляр доступен (scrape прошёл успешно), и0, если опрос не удался;scrape_duration_seconds{job="<job-name>", instance="<instance-id>"}— продолжительность опроса в секундах;scrape_samples_post_metric_relabeling{job="<job-name>", instance="<instance-id>"}— количество метрик после применения правил переименования метрик (metric relabeling);scrape_samples_scraped{job="<job-name>", instance="<instance-id>"}— общее количество метрик, полученных от целевой системы за опрос;scrape_series_added{job="<job-name>", instance="<instance-id>"}— приблизительное количество новых временных рядов, добавленных за опрос.
Временной ряд up широко используется для мониторинга доступности экземпляров.
Если активирован флаг extra-scrape-metrics, дополнительно доступны следующие метрики:
scrape_timeout_seconds{job="<job-name>", instance="<instance-id>"}— настроенное значениеscrape_timeoutдля целевой системы;scrape_sample_limit{job="<job-name>", instance="<instance-id>"}— настроенный лимит числа метрик (sample_limit) для опроса. Если лимит не задан, будет возвращено значение0;scrape_body_size_bytes{job="<job-name>", instance="<instance-id>"}: Размер ответа последнего опроса (в байтах), если опрос прошёл успешно. При ошибке из-за превышения лимитаbody_size_limitбудет возвращено-1, в остальных случаях неудачного опроса —0.