systemd 服务文件:在 StandardOutput= 和 StandardError= 中定义的日志文件名中包含动态时间戳

systemd 服务文件:在 StandardOutput= 和 StandardError= 中定义的日志文件名中包含动态时间戳

我创建了一个 systemd 服务单元文件,从 systemd 版本 240+ 开始,我们可以将 STDOUT + STDERR 输出设置为直接进入文件,如下所示:

StandardOutput=append:/tmp/my-service.log
StandardError=append:/tmp/my-service.log

有没有办法让我将服务启动时的当前时间戳添加到这些文件名中?

例如/tmp/my-service.log,每次服务启动时,它都会类似于:/tmp/my-service.2022-07-07_114035.log

如果它类似于 shell 脚本,我可以执行以下操作:

StandardOutput=append:/tmp/my-service.$(date +%Y-%m-%d_%H%M%S).log
StandardError=append:/tmp/my-service.$(date +%Y-%m-%d_%H%M%S).log

...但这在 systemd 配置文件中不起作用。

相关内容