systemd 进程 stdout/stderr

systemd 进程 stdout/stderr

当我手动运行该服务时,它会在启动时记录一些内容。

但是当它作为 systemd 进程启动时,我无法在任何地方找到该日志。

journalctl -u <service>仅显示服务启动和停止的记录,而不是实际的服务输出。

我尝试将配置添加到/etc/systemd/system/<service>.service文件:

StandardOutput=append:/var/opt/<service>/stdout.log
StandardError=append:/var/opt/<service>/stderr.log

但它也没有帮助——文件是在守护进程和服务重启后创建的,但它们是空的。

我错过了什么?

谢谢您的任何建议,我没有主意了。

答案1

在单元文件中使用以下内容

[Service]
StandardError=journal
StandardOutput=journal
StandardInput=null

更多详情请参见此处:https://www.freedesktop.org/software/systemd/man/systemd.exec.html#StandardOutput=

相关内容