Grafana Loki
Observability-as-Code
Agregacja logów jak Prometheus, ale dla logów - indeksuje etykiety, nie treść. Konfiguracja jako kod.
Loki to system agregacji logów zaprojektowany „jak Prometheus, tylko dla logów”: zamiast indeksować pełną treść, indeksuje wyłącznie etykiety (labels), a same logi trzyma tanio w obiektowym storage. Efekt to niski koszt i naturalne dopasowanie do metryk - te same etykiety, ten sam model myślenia, zapytania w LogQL. Konfigurację i reguły trzymasz jako kod, a logi oglądasz w Grafanie obok metryk i tracingu.
Kiedy używać
- Chcesz taniej agregacji logów spójnej etykietami z metrykami Prometheusa.
- Zależy Ci na self-hostingu i storage obiektowym (np. S3/MinIO), bez ciężkiego indeksu pełnotekstowego.
- Budujesz „jedną szybę” logi + metryki + tracing w Grafanie.
Przykład użycia
# promtail/loki client - etykiety jako kod
scrape_configs:
- job_name: app
static_configs:
- targets: [localhost]
labels: { job: web, env: prod, __path__: /var/log/app/*.log }
Warto wiedzieć
- Trójka Grafany: Loki (logi) + Tempo (tracing) + Prometheus (metryki).
- Licencja AGPL-3.0, pełny self-hosting; storage obiektowy trzymasz po swojej stronie (suwerenność).
- Do wysyłki/transformacji logów świetnie pasuje Vector albo OpenTelemetry Collector.