微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将 GELF-Logs 从本地 Docker 守护进程获取到 Loki?

如何解决如何将 GELF-Logs 从本地 Docker 守护进程获取到 Loki?

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

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

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

解决方法

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

(base) PS C:\Users\tuzes\source\call_proj> python -m pytest                  
=========================== test session starts ============================
platform win32 -- Python 3.9.1,pytest-6.2.3,py-1.10.0,pluggy-0.13.1       
rootdir: C:\Users\tuzes\source\call_proj
plugins: pylama-7.7.1,mock-3.6.1
collected 1 item

test\caller_in_test.py .                                              [100%] 

============================ 1 passed in 0.09s ============================= 
(base) PS C:\Users\tuzes\source\call_proj>

然后,您可以随意使用标签,如下所示:

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。