journalctl – смотрим логи

journalctl — это инструмент для просмотра и анализа логов, собираемых демоном systemd-journald. Он объединяет сообщения от ядра, служб, приложений и самого systemd в единый журнал. Благодаря этому администраторы могут эффективно отслеживать и устранять проблемы в системе.

Синтаксис

journalctl [опции] [фильтры]

Команда без параметров выведет все доступные журналы. Для просмотра логов, относящихся к определённой загрузке, времени, сервису или приоритету, используются соответствующие опции.

Основные опции

ОпцияОписание
-bпоказать логи текущей загрузки
-b -1 предыдущая загрузка, -b -2 — две загрузки назад и т.д.
–list-bootsсписок всех загрузок с их идентификаторами
-u <unit>логи конкретного сервиса (например, nginx.service)
-p <priority>фильтрация по уровню приоритета (0–7 или emerg–debug)
–since и –untilфильтрация по времени (например, –since “2025-05-25 14:00” или –since “2025-05-25 14:00” –until “2025-05-25 17:00”)
-fрежим реального времени (аналог tail -f)
-n <N>показать последние N записей (по умолчанию 10)
-r Обратный порядок (новые записи сверху)
-kтолько сообщения ядра
-o <format> формат вывода (short, json, cat, verbose и др.)
-eперейти к последним записям
-xдобавить пояснения к ошибкам, если доступны
–disk-usageпоказать объём, занимаемый логами
–vacuum-time=7dудалить логи старше 7 дней
–vacuum-size=100Mограничить размер логов 100 МБ

Примеры –since и –until

--since и --until — одни из самых удобных опций в journalctl, особенно когда нужно вывести логи за конкретный промежуток времени.

Показать логи за сегодня:
journalctl --since today

Логи за последние 2 часа:
journalctl --since "2 hours ago"

Логи за конкретную дату:
journalctl --since "2025-05-25" --until "2025-05-26"

Логи за конкретное время:
journalctl --since "2025-05-26 14:00" --until "2025-05-26 16:30"

Логи nginx за последний час:
journalctl -u nginx.service --since "1 hour ago"

Логи ядра за вчерашний день:
journalctl -k --since "yesterday" --until "today"

Прокрутить вверх