Loki — система агрегации логов от Grafana Labs, задуманная как "Prometheus для логов". Ключевая идея: индексировать только labels (job, instance, level), а не содержимое строк. Логи хранятся сжатыми чанками в S3/файлах, поиск — grep-стиль по chunk'ам.
Отличие от Elasticsearch: ES индексирует каждое слово каждой лог-строки → быстрый full-text search, но storage в 5-10 раз дороже (100 ГБ логов → 500 ГБ индексов). Loki хранит те же 100 ГБ, но full-text ищет через grep — медленнее на большом окне, но копеечная стоимость.
Использование: (1) Promtail / Grafana Alloy — агент на сервере, читает `journalctl` / файлы логов, шлёт в Loki. (2) Loki-сервер принимает и хранит. (3) Grafana Explore — интерфейс поиска через LogQL (SQL-подобный DSL: `{job="nginx"} |= "error" | rate[5m]`).
Практика: минимальный stack на VPS — Grafana + Prometheus + Loki + Promtail. Один VPS-M €12/мес держит логи 20 хостов + метрики. Готовый docker-compose — в `/docs/observability`.