systemd 服务会自动管理其日志(进行日志轮换等)

systemd 服务会自动管理其日志(进行日志轮换等)

我有一个 systemd 服务配置,如下所示:

[Unit]
Description=cprev agent
After=network.target
StartLimitIntervalSec=2

[Service]
Type=simple
Restart=always
RestartSec=15
ExecStart=/home/oleg/.local/bin/cprev-safe-start

[Install]
WantedBy=default.target

我像这样安装服务:

rsync "$PWD/systemd.service" "$HOME/.config/systemd/user/cprev.agent.service"
systemctl --user daemon-reload
systemctl --user enable cprev.agent.service
systemctl --user restart cprev.agent.service

我可以使用以下方法跟踪我的服务日志:

journalctl -f --user -u cprev.agent.service

我的问题是 - 我是否需要手动截断我的服务的日志,以免它们填满,或者 systemd 是否为我管理日志?如果它对我有用,它是如何运作的?

答案1

根据systemd文档,日志journald默认保留的大小限制为磁盘容量的 15% 或 4GB,以较小者为准。如果/var未挂载、不可写或/var/log/journal不存在,journald日志将仅存储在易失性内存中 ( /run/log/journal.)

如果您的服务在 systemd 日志之外创建自己的日志文件,您需要创建一个对数旋转进入管理它们。

相关内容