Journalctl — инструмент командной строки в Linux для поиска и отображения логов из journald, службы ведения логов systemd.
В этой заметке я покажу, как использовать journalctl
для отображения логов сервиса в systemd (вывести последние 100 строк или сделать tail -f
) и как показать логи за определенное время: логи за сегодня, логи за предыдущую загрузку системы или логи за конкретный промежуток времени.
Дельный Совет: Примеры создание systemd-сервиса! Читать далее →
Просмотр Логов Systemd-сервиса в Journalctl
Показать все логи:
$ journalctl
Отобразить логи только с момента текущей загрузки системы:
$ journalctl -b
Отобразить логи за предыдущую загрузку:
$ journalctl -b=-1
Вывести последние 100 строк логов конкретного systemd-сервиса (эквив. tail -n 100
):
$ journalctl -u docker.service -n 100 --no-pager
Печать логов systemd-сервиса в режиме реального времени (эквив. tail -f
):
$ journalctl -u docker.service -f
Показать логи systemd-сервиса за сегодня, начиная со вчера, и т.п.:
$ journalctl -u docker.service -S today $ journalctl -u docker.service -S yesterday $ journalctl -u docker.service -S "1 hour ago" $ journalctl -u docker.service -S "2 days ago"
Вывести логи за определенный промежуток времени:
$ journalctl -u docker.service -S "2020-01-16 18:00:00" -U "2020-01-17 23:00:00"
Парсинг логов сервиса в journalctl
:
$ journalctl -u docker.service | grep -i error