Linux 如何在journalctl之外分析journalctl日志?

Linux 如何在journalctl之外分析journalctl日志?,linux,go,systemd,Linux,Go,Systemd,我需要从systemd日志文件中收集一些统计信息,比如有多少用户将某个查询字符串参数传递给我的服务。我知道我可以在journalctl中查看这些信息,但我不知道如何在Go中查看这些信息,以便可以聚合数据。我一直在为此寻找一个库,但似乎找不到任何东西,也不知道日志文件实际存储在哪里。您可以从以下项目中获得一些线索: 它使用,并带有以下符号。 看 或者您可以直接将其转发到外部系统日志,如中所示。您可以从以下项目中获得一些线索: 它使用,并带有以下符号。 看 或者您可以直接将其转发到外

我需要从systemd日志文件中收集一些统计信息,比如有多少用户将某个查询字符串参数传递给我的服务。我知道我可以在journalctl中查看这些信息,但我不知道如何在Go中查看这些信息,以便可以聚合数据。我一直在为此寻找一个库,但似乎找不到任何东西,也不知道日志文件实际存储在哪里。

您可以从以下项目中获得一些线索:

  • 它使用,并带有以下符号。

或者您可以直接将其转发到外部系统日志,如中所示。

您可以从以下项目中获得一些线索:

  • 它使用,并带有以下符号。

或者您可以直接将其转发到外部系统日志,如中所述。

应该提到的。.我使用的是Ubuntu。如果日志没有特定的Go API,您可以通过一些Go-C绑定使用
sd日志
C API(请参见
man 3 sd日志
),或者使用合适的输出格式运行
journalctl
)。 g、
journalctl-ojson
)并解析它。我不确定哪个选项更可取。systemd问题应该在同级站点询问。入口点是dir/etc/systemd/system,其中每个子目录中各种服务的子目录是其配置文件,可能包含日志配置详细信息,也可能不包含日志配置详细信息。。。我建议你想一想如何创建一个自己的toy systemd服务,然后从一个已知的知识开始查看它的日志。我认为这更像是一个问题。unix.stackexchange.com没有Go标记;(@MarissaLevy它是二进制编码的,因此您无法将其放入文件中。因为它用于在linux终端上查看系统日志。应该提到这一点。我正在使用Ubuntu。如果没有特定的Go API用于日志,您可以通过一些Go-C绑定使用
sd日志
C API(请参见
man 3 sd日志
)或者使用合适的输出格式运行
journalctl
(例如。 g、
journalctl-o json
)我不确定哪个选项更可取。systemd问题应该在同级站点询问。入口点是dir/etc/systemd/system,其中每个子目录中的各种服务的子目录是其配置文件,这些文件可能包含日志配置细节,也可能不包含日志配置细节……我建议您了解如何创建一个toy系统您自己的d服务然后在查看其日志时进行斗争,您从已知的知识开始。我将其视为一个围棋问题。unix.stackexchange.com没有围棋标记。;(@MarissaLevy)它是二进制编码的,因此您无法将其放入文件中。因为它用于在linux终端上查看系统日志。