---
title: "Мониторинг Go-сервисов с Prometheus и client_golang"
description: "Курс по метрикам в Go: Counter, Gauge, Histogram, лейблы, PromQL, Grafana-дашборды, алерты и бизнес-метрики. 25 уроков с примерами client_golang."
url: "https://golangmaster.ru/courses/prometheus/"
published: "2026-09-19"
updated: "2026-09-24"
level: "практика"
lessons: 25
hours: 12
---

# Мониторинг Go-сервисов с Prometheus и client_golang

*практика · ~12 часов · 25 уроков. Обновлено 24.09.2026. Источник: https://golangmaster.ru/courses/prometheus/*

Сервис без метрик — чёрный ящик: падает RPS, растут очереди, утекает память, а вы узнаёте об этом от пользователей. Prometheus и client_golang — стандарт мониторинга Go-проектов, который поднимается за вечер.

Курс учит думать метриками: типы Counter и Gauge, гистограммы латентности, лейблы и их коварная кардинальность. Собираем свой /metrics endpoint, оборачиваем HTTP-хендлеры, добавляем бизнес-метрики, читаем PromQL и рисуем дашборды в Grafana. Финал — полный мониторинг веб-сервиса: трафик, ошибки, латентность и бизнес.

## Чему научитесь

- Понимать четыре типа метрик и выбирать правильный
- Экспортировать метрики из Go через promhttp
- Инструментировать HTTP-запросы и бизнес-события
- Писать PromQL-запросы: rate, sum, p99
- Строить дашборды и различать метрики от алертов
- Не утопить Prometheus кардинальностью лейблов

## Кому подойдёт

- Backend-разработчикам, чьи сервисы уже в проде
- DevOps и SRE, которым нужен мост в код приложения
- Тем, кто хочет отвечать «что сломалось» за минуту, а не за час

## Что нужно знать заранее

- Базовый Go и хотя бы один написанный HTTP-сервис
- Знакомство с chi или Gin — примеры будут на них

## Программа курса

01. **Знакомство: почему сервис молчит, а падает** — SLI, SLO и pull-модель Prometheus: язык наблюдаемости.
02. **Четыре типа метрик: Counter, Gauge, Histogram, Summary** — Счётчик против датчика: как не измерять температуру счётчиком.
03. **client_golang: первый /metrics endpoint** — promhttp.Handler, go get и страница метрик за минуту.
04. **Counter: считаем то, что только растёт** — NewCounter, Inc, Add: запросы, ошибки, перезапуски.
05. **Gauge: текущее состояние системы** — Set, Inc, Dec: размер очереди, активные пользователи.
06. **Лейблы: срезы по маршрутам и статусам** — WithLabelValues и CounterVec: одна метрика, много измерений.
07. **Histogram: латентность и bucket'ы** — Observe, осмысленные бакеты и p99: время ответа сервиса.
08. **Summary против Histogram** — Квантили на стороне клиента и почему histogram обычно лучше.
09. **Метрики HTTP: InstrumentHandler** — Готовые обёртки promhttp и свой middleware: duration, размер, статусы.
10. **Бизнес-метрики: заказы и оплаты** — Счётчик заказов, суммы, конверсии: метрики, понятные продукту.
11. **Встроенные метрики процесса Go** — Goroutines, GC, память: что уже есть в /metrics бесплатно.
12. **PromQL: первая пара запросов** — rate, sum by, увеличение за окно: читаем свои метрики.
13. **Grafana: дашборд из запросов** — Панели, ряды, переменные: как рисуют мониторинг.
14. **Алерты: правила и дежурство** — В чём разница с метриками, Alertmanager и тишина ночью.
15. **Таймеры: prometheus.NewTimer и defer** — Обёртка для латентности функций: измеряем не только HTTP.
16. **Горутины и память: свои сборщики** — NumGoroutine в Gauge: ловим утечку до OOM.
17. **Кардинальность: тихий убийца Prometheus** — userID в лейбле и тысячи серий: где граница разумного.
18. **Свой Collector: Describe и Collect** — Интерфейс сборщика: метрики из сторонних систем на лету.
19. **Health-check: liveness и readiness** — healthz и readyz для оркестратора и их связь с метриками.
20. **Стресс-тест: метрики под нагрузкой** — Нагружаем сервис и смотрим, как растут серии и латентность.
21. **Логи и метрики: одна история** — Zap-поля и метрики ошибок: корреляция при разборе инцидента.
22. **Реестры и namespace метрик** — Namespace, Subsystem, свой Registry: дисциплина имён.
23. **Скрейпинг: prometheus.yml и сервис-дискавери** — Как Prometheus находит ваш /metrics и с каким интервалом.
24. **Эксплуатация: что мониторить в первую очередь** — Красный метод: трафик, ошибки, латентность — порядок внедрения.
25. **Итоговый проект: мониторинг веб-сервиса** — Полный набор: HTTP-метрики, бизнес, память и дашборд.

## Вопросы и ответы по курсу

### Нужен ли сам сервер Prometheus для курса?

Нет. Код метрик пишется и изучается в браузере. Для полного цикла со скрейпом и Grafana в середине курса есть пошаговая инструкция Docker Compose — но она опциональна.

### Это курс DevOps или Go?

Go в первую очередь: вы учитесь писать код, который удобно мониторить. PromQL и Grafana даются ровно настолько, чтобы ваши метрики кто-то увидел.

### Чем курс отличается от урока про /metrics?

Глубиной: типы метрик, кардинальность, собственный Collector, связка логов с метриками и бизнес-события — тема на книгу, сжатая до 25 уроков.
