However, journald seems not to rotate / auto-vacuum old archived logs to replace them with newer logs.
This means, that as soon the quota is exceeded, new logs will not be persisted and stay transient.
I don’t know if this is configured and intended behavior on Ubuntu Core. But, journald seems to not rotate and auto-vacuum per default.
Further, we tried to run the vacuum command (journald --vacuum-size=100M) via a snap to clean the logs. This is not possible, as the log-observe-interface only provides read access to /var/log/journal.
I also did not find a interface which provide delete-access to that folder.
So my questions would be,
Is journald behaving correctly by not rotating and auto-vacuuming old log files.
Is there a way to further configure journald on Ubuntu Core to maybe configure it to auto-vacuuming?
How to get delete-permissions to /var/log/journal to manually vacuum the logs in /var/log/journal. Is there an interface I’m missing, if not might it be possible to add a log-control interface?
if it enables persistence it should also set sane defaults for the log rotation in journald.conf and not have journald fall back to ring-buffered logs once the quota is reached … try filing a snapd bug in launchpad
What about the idea to introduce a log-control interface to trigger an vacuum run?
This should be possible regardless whether snapd/journald is doing correct log-ration.
Well, i’m not an architect so i dont make such decisions, but i guess since there is already a snap setting for persistence, i’d expect to be an adjustable setting for the vaccuming to be added here … instead of an interface that would potentially interfere with that config option by giving you 100% control …
file that bug so the architects can take a look at it and move on with what they consider the right implementation
@retob Is it possible to get the journal logs from a reboot on the affected device?
journalctl -b and then upload it? I’d like to see if systemd is reporting anything causing the rotation to not happen. In ubuntu core we are using standard rules for the default journald namespace, which is to limit the size to 10%, and rotation should occur every 1/8 of that space.
So if the rotation is not happening, hopefully systemd is reporting some kind of error or reason as to why.