Практикум — Loki, Tempo и Mimir
Практикум, шаг 7 из 9. Назад — алертинг. Дальше — Alloy и Beyla.
Три столпа в одном UI
Prometheus отвечает на «сколько и как быстро». Для расследования инцидента нужны ещё
- логи — что произошло по шагам;
- трейсы — путь одного запроса через сервисы.
Grafana связывает все три в Explore и на дашбордах. Стек Grafana Labs часто называют LGTM (Loki, Grafana, Tempo, Mimir). Базовые дашборды и Explore — Практикум Grafana — шаг 4; полный маршрут — о разделе.

Loki — логи как метки
Loki индексирует labels (как Prometheus), тело лога хранит в object storage или локально. Язык запросов — LogQL.
Минимальный фрагмент Compose:
loki:
image: grafana/loki:3.2.0
ports:
- "3100:3100"
command: -config.file=/etc/loki/local-config.yaml
promtail:
image: grafana/promtail:3.2.0
volumes:
- /var/log:/var/log:ro
- ./promtail.yml:/etc/promtail/config.yml:ro
promtail.yml — scrape docker logs или /var/log/*.log с labels job, host.
LogQL в Grafana Explore:
{job="varlogs"} |= "error"
{container="myapp"} | json | status >= 500
Сравнение с ELK — в 92.md.
Tempo — распределённые трейсы
Tempo принимает spans по OTLP (gRPC/HTTP), Jaeger, Zipkin. Дешёвое хранение — без отдельного индекса по каждому атрибуту.
tempo:
image: grafana/tempo:2.6.0
ports:
- "3200:3200" # query
- "4317:4317" # OTLP gRPC
command: [ "-config.file=/etc/tempo.yaml" ]
Приложение или Alloy отправляет трейсы на tempo:4317. В Grafana — datasource Tempo, поиск по trace_id.
Корреляция — из метрики с exemplars или из лога с полем trace_id → кнопка «View trace» в Explore.
Mimir — долгосрочные метрики
Prometheus TSDB по умолчанию хранит ~15 дней. Grafana Mimir (форк Cortex) — горизонтально масштабируемое хранилище с remote_write / remote_read.
Prometheus → remote_write:
remote_write:
- url: http://mimir:9009/api/v1/push
Для учебного стенда Mimir опционален — достаточно знать, что при росте retention его подключают вместо или вместе с Thanos. Долгосрочные метрики на дашбордах Grafana настраивают так же, как Prometheus-источник — см. шаг 4.
| Решение | Назначение |
|---|---|
| Mimir | Grafana stack, object storage |
| Thanos | Sidecar к Prometheus, глобальный query |
| Cortex | Предшественник Mimir |
Единый Explore — сценарий расследования
- Алерт HighErrorRate в Grafana (шаг 6).
- Explore → Prometheus — spike на графике 5xx.
- Переключение на Loki —
{job="myapp"} |= "error"в том же интервале. - Копируете
trace_idиз JSON-лога. - Tempo — поиск по trace → медленный span в БД.

Без trace_id в логах связь обрывается — см. OpenTelemetry на шаге 9.
Datasources в Grafana
| Datasource | URL (Compose) |
|---|---|
| Loki | http://loki:3100 |
| Tempo | http://tempo:3200 |
| Mimir | http://mimir:9009/prometheus |
В настройках Tempo укажите Trace to logs — datasource Loki и маппинг trace_id.
Чек-лист
- Loki принимает логи, запрос
{job=~".+"}в Explore - Tempo datasource добавлен
- (Опционально) remote_write в Mimir
Дальше — Alloy, Beyla, Faro, Pyroscope.
См. также
Другие статьи этого же раздела в боковом меню (как на странице "О разделе"). Два инструмента, русский UI Grafana 12, windows_exporter, UI-шпаргалки, targets, Explore, дашборд Windows и типичные сбои. Pull-модель, компоненты Prometheus, временные ряды, метки, exporters и Pushgateway — основа перед установкой. Docker Compose на Windows и Linux, Grafana 12 и ru-RU, windows_exporter, provisioning, health check и типичные сбои первого запуска. Counter, Gauge, Histogram, Summary, функции rate и increase, агрегации и типовые запросы для дашбордов. Проверка provisioned datasource, первая панель up, переменные, Explore, импорт дашбордов — после шага 2. node_exporter, windows_exporter на Windows, blackbox, Pushgateway, client libraries и /metrics. Alerting rules, Alertmanager, маршрутизация, inhibition, Grafana Unified Alerting и туториал по алертам. Grafana Alloy как единый агент, eBPF-метрики Beyla, RUM Faro и профилирование Pyroscope. OpenTelemetry Collector, инструментирование сервиса, нагрузочный тест k6 с метриками и полный docker-compose observability lab.Как пользоваться
Практикум Prometheus — архитектура и модель данных
Практикум Prometheus — установка и первые метрики
Практикум Prometheus — типы метрик и PromQL
Практикум Grafana — источники данных и дашборды
Практикум Prometheus — экспортёры и инструментирование
Практикум Prometheus — Alertmanager и Grafana Alerting
Практикум — Alloy, Beyla, Faro и Pyroscope
Практикум — OpenTelemetry, k6 и итоговый стенд