Система журналирования в systemd работает на основе централизации. 1 Специализированный компонент journal собирает все системные сообщения: сообщения ядра, различных служб и приложений. 1 При этом специально настраивать отправку логов не нужно: приложения могут просто писать в stdout и stderr, а journal сохранит эти сообщения автоматически. 1
Журнал хранится в бинарной базе, что упрощает систематизацию и поиск. 1 При необходимости логи можно без проблем переконвертировать в другие форматы. 1
Утилита journalctl позволяет просматривать и фильтровать данные, собираемые демоном journald. 45 Некоторые возможности работы с journalctl:
- Фильтрация по времени. 24 Можно вывести на экран данные из лог-файлов, начиная с определённой даты. 4 Для этого используется опция --since, в качестве её аргумента нужно передать дату и время. 4
- Просмотр последних сообщений. 4 Для вывода последних 10 сообщений из журнальных файлов в терминале используется опция -n с командой journalctl. 4
- Вывод сообщений ядра, служб и процессов Linux. 4 Опция -k указывает инструменту вывести на экран только сообщения ядра Linux. 4
- Фильтрация по приоритету сообщений. 24 Инструмент позволяет выборочно просматривать сообщения журнала в зависимости от их уровня приоритета. 4
- Настройка ротации логов. 1 Настройка осуществляется с помощью опций −−vacuum-size и −−vacuum-time. 1 Первая из них устанавливает предельно допустимый размер для хранимых на диске логов. 1 Как только объём логов превысит указанную цифру, лишние файлы будут автоматически удалены. 1 Аналогичным образом работает опция −−vacuum-time: она устанавливает для логов срок хранения, по истечении которого они будут автоматически удалены. 1