【问题标题】:journalctl unit logging stopped while unit is still runningjournalctl 单元记录在单元仍在运行时停止
【发布时间】:2019-01-13 16:13:46
【问题描述】:
似乎在上面找不到任何东西,我也觉得很奇怪。
我有一个 python 程序,它非常频繁地插入数据库记录,并且它仍在这样做,所以我知道该程序仍在运行。
我在 systemctl 中将程序设置为服务单元,并记录到 journalctl。
日志已经好几个月了,但在今天 1 点钟,日志不再添加到本单元的日志数据中。
这只是内存问题吗?我不知道为什么,但我认为 journalctl 会处理这个问题。
【问题讨论】:
标签:
logging
systemctl
systemd-journald
【解决方案1】:
是的,这是一个内存问题,通过运行找到 journalctl 存储其日志的位置来解决
man systemd-journald
然后我想检查系统上的剩余内存,所以我跑了:
df
这告诉我日志存储目录的顶级目录已 100% 满。所以没有更多的存储空间。
我想我有一个旧版本的 journalctl 并且没有 --rotate 标志,这意味着很难删除未归档的日志。我能够通过以下方式释放 10% 的空间:
journalctl --vacuum-time=1d
然后我跑了:
sudo systemctl restart systemd-journald
这会重新启动日志服务,但这并没有让我的日志正常工作,所以我随后重新启动了我自己的服务:
systemctl restart service.name
然后我的日志又开始显示了!