随着 systemd 的出现,一些事情发生了变化。因此,我现在可以使用journalctl
它来访问日志,而不是跟踪特定文件。
然而,在/etc/systemd/journald.conf
下的[Journal]
选项Storage=persistent
似乎与 冲突ForwardToSyslog=yes
。
我的目的是允许使用journalctl
最近的事件,例如在几天的预定义时间内(例如MaxRetentionSec=1month
)但是还将所有事件转发到我的 syslogd 实例。
但是,使用journalctl -xe
我可以看到那些进入 syslogd 的消息肯定没有进入持久 systemd 日志。
我怎样才能启用这样的模式,即登录到持久系统日志和转发到 syslogd?
# systemd --version
systemd 229
+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ -LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN
答案1
我不确定你的结论。虽然我只有版本 219,但我在/var/log/messages
syslog 中看到了相同的行,就像在 的输出中一样sudo journalctl --follow
,例如,当我使用logger -p kern.err abc
systemctl 执行 ssh 或停止服务时。
我正在使用默认值journald.conf
(Storage=auto
当你有一个目录时,它类似于 persist /var/log/journal
)和ForwardToSyslog=yes
, with rsyslogd
。
请注意,您需要sudo journalctl
能够读取所有日志。