systemd 和 python 日志记录

systemd 和 python 日志记录

我写了一个简单的 python3 skript 并想用它来做一个服务。这是两个文件

#!/bin/python3
while True:
     print('True')

系统服务:

[Unit]
Description=True Service

[Service]
Type=simple
ExecStart=python3 /root/print_true.py
StandardOutput=journal+console

[Install]
WantedBy=multi-user.target

该服务正在启动,但我在任何地方都看不到输出。不在journalctl -u true-service.service,不在systemctl status true-service,不在syslog。我只想将其记录在日记中,但我该如何实现呢?我似乎找不到有效的答案。

答案1

为了systemd-cat实现这一点,将输出通过管道传递给它。

测试一下:

echo "hello world" | systemd-cat -ttrue-service

列出输出:

journalctl -t true-service

更改您的服务单位:

ExecStart=/usr/bin/python3 /root/print_true.py | /usr/bin/systemd-cat -ttrue-service

相关内容