Модуль 2 · Как работает Prometheus · Макаров М. Н.

Метрики и наблюдаемость · справочник Макарова М. Н.

8 глав

Как работает
Prometheus

Путь числа от приложения
до ответа на запрос

Модуль 2 справочника «Метрики и наблюдаемость». В первом модуле Prometheus использовался как готовая программа: приложение показывает числа, Prometheus их забирает, Grafana строит график. В этом модуле тот же путь разобран по шагам.

Главы идут в том порядке, в котором движутся данные. Сначала разобрано, что такое Prometheus. Затем target — адрес, по которому приложение показывает числа. Затем страница /metrics и правила её записи. Затем scrape — регулярный опрос этой страницы, и pull-модель — способ сбора, при котором обмен начинает сервер. Глава 2.6 — практика на своём компьютере, глава 2.7 — справка о формате YAML и ряде up, глава 2.8 — итоги модуля.

В каждом разделе термин вводится через сравнение из жизни и показывается на числах стенда. Выводы команд, тексты ошибок и снимки экрана получены на стенде модуля: Prometheus 3.5.0 в Docker, FastAPI 0.115, prometheus-client 0.26. Архив стенда можно скачать и повторить каждый опыт.

Prometheus 3.5.0 FastAPI Docker Compose настоящие ошибки scrape модель сбора

ПланГлавы модуля

В начале каждой главы указано, что в ней разобрано и на какие главы она опирается. В конце главы — вопросы «Проверьте себя» с разбором ответов и список источников. Grafana, оповещения и язык запросов PromQL разбираются в следующих модулях.

ТестПроверочная работа по модулю

Тест · модуль 2 Как работает Prometheus: разбор ситуаций В каждом задании описана рабочая ситуация: что настроено, что видно на экране, что произошло. Нужно разложить ситуации по группам, найти строку с ошибкой, поставить причину к тексту ошибки, посчитать число. 23 задания45 минутодна попыткаразбор после отправки Открыть тест →

Проверка кодов результата — страница для преподавателя

СтендМатериалы модуля

prometheus-start/
app.pyприложение FastAPI с одной метрикой http_requests_total
compose.yamlсервисы api и prometheus в одной сети
prometheus.ymlрабочая конфигурация: один job, один target
prometheus-errors.ymlопыт главы 2.4: пять неуспешных target
prometheus-local.ymlвариант без Docker
Dockerfile, requirements.txtобраз приложения
README.mdкоманды запуска для macOS, Linux и Windows

↓ Скачать стенд prometheus-start.zip ↓ Итоговый стенд prometheus-final.zip

Итоговый стенд — готовый результат главы 2.6: приложение с двумя метриками, настройки для каждого задания и файл PROHOD.md с девятью шагами прохода.

Метрики и наблюдаемость · Модуль 2 · Как работает Prometheus Автор: Макаров Максим Николаевич