Как получить GELF-Logs от локального демона Docker к Loki?

tl;dr:
Loki-docker-log-driver -> Loki : ✅ работает.
Loki-docker-log-driver -> Декодирование JSON -> Loki : Как?

Для моей локальной разработки я запускаю несколько сервисов, которые регистрируются в формате GELF. Чтобы получить лучший обзор и упорядоченный по времени поток журналов с функцией фильтрации, я использую драйвер журнала loki docker.

Сообщения журнала JSON (стиль GELF) успешно отправляются в loki, но я хочу, чтобы они были дополнительно обработаны, чтобы извлекать метки. Как я могу этого добиться?


person sja    schedule 14.05.2021    source источник


Ответы (1)


Если вы уже отправили журналы в формате JSON в Loki, все, что вам нужно сделать, — это выбрать нужный поток журналов и передать его парсеру json, как в следующем примере:

{filename="/var/log/nginx/access.log"} | json

Затем вы можете использовать метки по своему усмотрению, например:

{filename="/var/log/nginx/access.log"} | json | remote_addr="147.741.001.047"
person Marcelo Ávila de Oliveira    schedule 14.05.2021