【发布时间】:2019-03-12 12:25:26
【问题描述】:
我需要从我的 systemd 日志文件中收集一些统计信息,例如有多少用户将某个查询字符串参数传递给我的服务。我知道我可以在 journalctl 中查看这些信息,但我不知道如何在 Go 中这样做,以便我可以聚合数据。我一直在为此寻找一个库,但似乎找不到任何东西,而且我无法弄清楚日志文件的实际存储位置。
【问题讨论】:
-
应该提到..我使用的是 Ubuntu。
-
如果期刊没有特定的 Go API,您可以通过一些 Go-C 绑定使用
sd-journalC API(请参阅man 3 sd-journal)或运行journalctl合适的输出格式(例如journalctl -o json)并解析它。我不确定哪个选项更可取。 -
systemd 问题应该在兄弟站点unix.stackexchange.com 上询问,入口点是 dir /etc/systemd/system 其中是每个子目录中各种服务的子目录是它的配置文件,可能有也可能没有包含日志配置详细信息...我建议您弄清楚如何创建自己的玩具 systemd 服务,然后从已知的已知位置开始查看其日志记录
-
我更多地将其视为围棋问题。 unix.stackexchange.com 没有 Go 标签。 ;(
-
@MarissaLevy 它是二进制编码的,因此您无法将其放入文件中。因为它是用来在linux终端查看系统日志的。