如何从本地 Docker 守护进程获取 GELF 日志到 Loki?

How to get GELF-Logs from local Docker daemon to Loki?

tl;博士
Loki-docker-log-driver -> Loki:✅ 有效。
Loki-docker-log-driver -> JSON 解码 -> Loki:如何?

对于我的本地开发,我运行 几个以 GELF 格式登录的服务。为了获得更好的概览和具有过滤功能的按时间排序的日志流,我使用 loki docker log driver.

JSON 日志消息(GELF 样式)已成功发送到 loki,但我想进一步处理它们以便提取标签。我怎样才能做到这一点?

如果您已经将 JSON 格式的日志发送到 Loki,您需要做的就是 select 所需的日志流并将其通过管道传输到“json”解析器,如以下示例所示:

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

然后,您可以随意使用标签,例如:

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