pouya Asked: 2018-09-12 23:42:42 +0800 CST2018-09-12 23:42:42 +0800 CST 2018-09-12 23:42:42 +0800 CST 在哪里可以找到特定服务的日志文件 772 使用sudo journalctl -u {service}我可以看到特定服务的日志。 如何找到相关的日志文件? 以编程方式监视日志文件的最佳方法是什么?(我的意思是一个基于日志文件中出现的东西做出反应的程序) systemd journalctl 2 个回答 Voted Best Answer JdeBP 2018-09-13T00:49:09+08:002018-09-13T00:49:09+08:00 具有 s6、runit、perp、nosh、daemontools-encore 等的系统。以这种方式进行服务管理工作。每个主要服务都有一个单独的关联日志文件集,可以单独监控,以及分散的日志记录机制。 然而,systemd 不能以这种方式工作。任何给定服务都没有单独的“关联日志文件”。没有要监视的此类文件。 所有日志输出都汇集到一个中央守护进程中systemd-journald,该守护进程将其作为单个流写入,所有服务的日志输出都合并到 中的单个中央日志中/{run,var}/log/journal/。 -u选项journalctl是一个后处理过滤器,它过滤从单个中央日记帐打印的内容,所有日记帐条目都被标记(除其他外)相关服务的名称。一切都扇入其中,然后必须对其进行过滤以将其分离回(大约)它最初的样子。 systemd 的方式是使用journalctl -f添加了适当的过滤器,或者直接使用 systemd 特定的 API 为其日志编写自己的程序。 进一步阅读 https://unix.stackexchange.com/a/294206/5132 telcoM 2018-09-13T01:33:53+08:002018-09-13T01:33:53+08:00 1.) 如果您的 Linux 发行版journald完全使用,则不会像@JdeBP提到的那样易于阅读传统日志文件。日志文件采用二进制格式,传统日志文件工具不易解析。 2.) 如果journalctl -u {service}有您需要的信息,那么您可以使用journalctl -f -u {service}输出并将其传送到解析日志并触发任何需要的反应的程序。除此之外的任何内容都可能特定于您选择的 Linux 发行版。 例如,默认配置中的 Debian 9 (Stretch)journald保留了传统的/dev/logsyslog 输入套接字。但如果rsyslogd已安装,journald则配置为将传入的 syslog 消息转发给它。 其他 Linux 发行版可能journald与结构不同的传统 syslog 守护程序之间存在关系。
具有 s6、runit、perp、nosh、daemontools-encore 等的系统。以这种方式进行服务管理工作。每个主要服务都有一个单独的关联日志文件集,可以单独监控,以及分散的日志记录机制。
然而,systemd 不能以这种方式工作。任何给定服务都没有单独的“关联日志文件”。没有要监视的此类文件。
所有日志输出都汇集到一个中央守护进程中
systemd-journald
,该守护进程将其作为单个流写入,所有服务的日志输出都合并到 中的单个中央日志中/{run,var}/log/journal/
。-u
选项journalctl
是一个后处理过滤器,它过滤从单个中央日记帐打印的内容,所有日记帐条目都被标记(除其他外)相关服务的名称。一切都扇入其中,然后必须对其进行过滤以将其分离回(大约)它最初的样子。systemd 的方式是使用
journalctl -f
添加了适当的过滤器,或者直接使用 systemd 特定的 API 为其日志编写自己的程序。进一步阅读
1.) 如果您的 Linux 发行版
journald
完全使用,则不会像@JdeBP提到的那样易于阅读传统日志文件。日志文件采用二进制格式,传统日志文件工具不易解析。2.) 如果
journalctl -u {service}
有您需要的信息,那么您可以使用journalctl -f -u {service}
输出并将其传送到解析日志并触发任何需要的反应的程序。除此之外的任何内容都可能特定于您选择的 Linux 发行版。例如,默认配置中的 Debian 9 (Stretch)
journald
保留了传统的/dev/log
syslog 输入套接字。但如果rsyslogd
已安装,journald
则配置为将传入的 syslog 消息转发给它。其他 Linux 发行版可能
journald
与结构不同的传统 syslog 守护程序之间存在关系。