Linux Labs

Наблюдаемость: метрики, алерты, логи / Ступень 1 из 9

Метрика, экспортёр и сбор

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 5 из 7 · на машине · 7 мин

Новое задание

Новую цель Prometheus начинает собирать после правки конфига и его перечитывания.

Задание добавляется в список scrape_configs таким же блоком: job_name, под ним static_configs и targets. Отступы в YAML задают вложенность, и лишний пробел ломает весь файл. Поэтому после правки конфиг проверяют: promtool check config /etc/prometheus/prometheus.yml печатает SUCCESS или номер строки с ошибкой (в Вики).

Перечитать конфиг без перезапуска — sudo systemctl reload prometheus: systemd посылает Prometheus сигнал HUP, история и сбор остальных целей не прерываются. Сломанный конфиг reload не применяет: команда всё равно выходит с кодом 0, Prometheus работает по прежнему конфигу, а в его журнал уходит строка Error reloading config (в Вики).

Проверь себя 1 вопрос

В prometheus.yml цели задания node поменяли порт на 9101, promtool check config напечатал SUCCESS, reload не делали. Какой адрес у цели node покажет /api/v1/targets?

  • Работающий Prometheus знает только загруженный конфиг, нового файла он ещё не видел. Цель останется одна — со старым адресом.

  • promtool только проверяет файл: Prometheus читает конфиг при запуске и при reload. Загруженный конфиг показывает /api/v1/status/config.

Без reload Prometheus работает по конфигу, загруженному при запуске, и собирает старый адрес. Новый он прочитает по sudo systemctl reload prometheus — если файл без ошибок.

После удачного reload новая цель появляется в /api/v1/targets сразу, а up у неё — после первого сбора, в пределах scrape_interval; здесь это 5 секунд. Если цели нужны свои метки — например, команда, которая за неё отвечает, — их ставит строка labels: рядом с targets: Prometheus добавит их ко всем рядам этой цели. Какой конфиг загружен сейчас, показывает /api/v1/status/config.

Упражнение · сделать

Подключи приложение к Prometheus

Учебное приложение labapp работает и отдаёт метрики по адресу 127.0.0.1:8000/metrics, но Prometheus их не собирает. Сделай так, чтобы собирал; задание назови labapp. Конфиг — /etc/prometheus/prometheus.yml.

Войти и начать Машина доступна после входа

Цели · 0 из 2

  • Описать задание labapp в конфиге Prometheus ещё не выполнена
  • Добиться, чтобы Prometheus собирал приложение ещё не выполнена

Цели шага

0 из 2
  • Описать задание labapp в конфиге Prometheus — ещё не выполнена
  • Добиться, чтобы Prometheus собирал приложение — ещё не выполнена
Ubuntu 24.04

Цели шага

0 из 2
  • Описать задание labapp в конфиге Prometheus — ещё не выполнена
  • Добиться, чтобы Prometheus собирал приложение — ещё не выполнена
Загрузка…