journalctl: три флага, которые экономят время
Фильтр по юниту, окно по времени и вывод без пейджера закрывают большую часть задач.
Почти всегда хватает трёх вещей: фильтра по юниту, ограничения по времени и вывода без пейджера. Остальное — по необходимости.
journalctl -u nginx --since "1 hour ago" --no-pager
journalctl -p warning -b
journalctl -u myapp -f -o cat
-p warning показывает предупреждения и всё, что серьёзнее. -b ограничивает вывод текущей загрузкой, а -b -1 — предыдущей, что выручает после внезапной перезагрузки.
Флаг -o cat убирает префиксы с датой и хостом, когда приложение и так пишет время в своих строках. Для разбора скриптом удобнее -o json: у каждой строки появляются поля вроде _PID и _SYSTEMD_UNIT.
Если журнал разросся
journalctl --disk-usage
journalctl --vacuum-time=14d
Постоянный лимит лучше задать в /etc/systemd/journald.conf через SystemMaxUse=, иначе через полгода вопрос вернётся.