Pasé unos días escribiendo un script de python y creando un archivo de unidad systemd para él. Durante las pruebas, el script registró muchos errores en journald. Me gustaría borrar esos errores de journald ahora que he terminado.
Hay varias formas de borrar todo el diario, como se describe aquí: Cómo borrar el diario,
incluido el uso journalctl --vacuum-time=2d
, el uso journalctl --vacuum-size=500M
y la configuración temporal SystemMaxUse=
en /etc/systemd/journald.conf a un valor muy bajo.
Todo esto parece borrar todo el diario, afectando a todas las unidades. Solo necesito borrar las entradas para una sola unidad. es posible?
Respuestas:
Use mi programa Python 3 copy_journal.py en los archivos de diario
/var/log/journal
de los que desea eliminar entradas.Por ejemplo, para hacer una copia
system.journal
sin entradas de registro paraNetworkManager.service
:fuente
No creo que sea posible, porque de acuerdo con la página de manual de journalctl "La salida se intercala de todos los archivos de diario accesibles, ya sea que estén rotados o que se estén escribiendo actualmente".
Sin embargo, podría filtrarlo por una unidad: 'journalctl -u some.service' y luego tratar de eliminar las entradas de registro del diario con su propio script usando cron.
fuente