我使用sudo journalctl -u some-service -f
查看服务日志。但是,当服务运行时,最后一个日志的格式始终为:
***Plenty of logs from previous instance of Some Service***
Apr 14 09:03:05 user-computer systemd[1]: Stopped Some Service.
Apr 14 09:03:35 user-computer systemd[1]: Started Some Service.
我期待看到的内容:
***Plenty of logs from previous instance of Some Service***
Apr 14 09:03:05 user-computer systemd[1]: Stopped Some Service.
Apr 14 09:03:35 user-computer systemd[1]: Started Some Service.
***New logs from current instance of Some Service***
为什么我无法从当前运行的服务实例中看到日志?只有在我停止/重新启动服务后,才能看到该实例的日志。
请帮忙。
答案 0 :(得分:0)
问题是特定于应用程序,与systemd或journalctl无关。
对于我的Python服务,我必须禁用输出缓冲区:
[Service]
StandardOutput=journal
StandardError=journal
Environment="PYTHONUNBUFFERED=x"
对于我的PHP应用程序,我只需在刷新内容之前添加换行符。