我有一个在Debian(Jessie)服务器上运行的服务(由我自己编写),该服务自己的日志恰好表明它在特定时间重新启动。没有迹象表明存在段错误或其他崩溃,因此我现在试图确定应用程序是否以某种方式静默失败并被systemd重新生成,或者用户是否通过故意重新启动了服务systemctl
。
外壳程序历史记录未显示此类活动,但是export HISTCONTROL=ignoreboth
由于SSH会话可能已超时,从而阻止了先前登录名的bash历史记录写入磁盘,因此尚无定论。当时服务器未重启。
但是我希望systemd本身应该保留一个日志,指示何时有意重新启动服务。令我惊讶的是,我找不到任何journalctl
有关如何获取此类日志的文档(例如)。
其他一些帖子(例如,哪里/为什么普通用户systemd服务没有日志?)似乎表明应该有这样的日志消息:
Jan 15 19:28:08 qbd-x230-suse.site systemd[1]: Starting chatty.service...
Jan 15 19:28:08 qbd-x230-suse.site systemd[1]: Started chatty.service.
但是我在系统上看不到这样的日志消息。
有没有办法找出何时启动,停止或重新启动systemd服务?
编辑:看来人们可能遇到的典型问题是他们journalctl
以非特权用户身份运行。对我来说不是这样,我一直都在工作root
。作为对评论的回应,运行grep systemd /var/log/syslog
仅给我以下内容:
Jun 6 09:28:35 server systemd[22057]: Starting Paths.
Jun 6 09:28:35 server systemd[22057]: Reached target Paths.
Jun 6 09:28:35 server systemd[22057]: Starting Timers.
Jun 6 09:28:35 server systemd[22057]: Reached target Timers.
Jun 6 09:28:35 server systemd[22057]: Starting Sockets.
Jun 6 09:28:35 server systemd[22057]: Reached target Sockets.
Jun 6 09:28:35 server systemd[22057]: Starting Basic System.
Jun 6 09:28:35 server systemd[22057]: Reached target Basic System.
Jun 6 09:28:35 server systemd[22057]: Starting Default.
Jun 6 09:28:35 server systemd[22057]: Reached target Default.
Jun 6 09:28:35 server systemd[22057]: Startup finished in 59ms.
Jun 6 09:37:08 server systemd[1]: Reexecuting.
Stopped target Default
,Starting Shutdown
等。什么都没有表示有关单个服务的任何信息。也许仅仅是配置问题?注意在这种情况下,我使用的是Debian Jessie。
/etc/systemd/journald.conf
尚未被覆盖的MaxLevelStore
或MaxLevelSyslog
,并查看您可以配置的其他所有日志位置,如中所列man journald.conf
。
/etc/systemd
实际上都是空的(注释掉了所有选项,包括您提到的选项)。
grep systemd /var/log/syslog