Вывод лога в текстовый файл
Если необходимо вывести лог в текстовый формат, используйте конструкцию:
[команда] > [путьктекстовому_файлу]
Пример:
journalctl -b --no-pager > ~/journalctl.log
Работа с логами
Лог с момента запуска системы:
journalctl -b
Лог с момента запуска системы с расшифровкой ошибок:
journalctl -xb
Последние записи журнала, и продолжать выводить новые, при добавлении их в журнал:
journalctl -f
Просмотр информации о недавних событиях:
journalctl -n
По умолчанию в терминал выводится информация о последних 10 событиях. С опцией -n можно указать необходимое число событий:
journalctl -n 20
Для фильтрации по дате и времени важны два ключа
--since — вывод от такого-то момента времени
--until — вывод до такого-то момента времени
Примеры:
Формат: YYYY-MM-DD HH:MM:SS
journalctl --since "20122-05-03 00:01" --until "2022-05-04 00:02"
Слова: «yesterday», «today», «tomorrow», «now»:
journalctl --since "yesterday" --until "2022-05-04 00:02"
Показывать в реальном времени все записи, независимо от их размера и кодировки:
journalctl -af
Сообщения ядра:
journalctl -k
Сообщения конкретного процесса:
journalctl _PID=1
Сообщения конкретного приложения или службы:
journalctl -u nginx
Сообщения процессов, запущенных от имени пользователя:
journalctl _UID=1001
Ограничение размера журнала
Если journald настроен, чтобы сохранять журналы после перезагрузки, то по умолчанию размер журнала ограничен 10% от объема файлового раздела и максимально может занять 4 Гб дискового пространства.
Максимальный объем журнала можно скорректировать, раскомментировав и отредактировав следующий параметр в файле конфигурации /etc/systemd/journald.conf.
sudo nano /etc/systemd/journald.conf
В блоке [journal] надо изменить параметр systemmaxuse, например systemmaxuse = 20M.
Удаление журналов и определение текущего использования дискового пространства
Удалить файлы архивных журналов, можно вручную с помощью rm или использовать journalctl.
Удалить журналы, оставив только последние 50M:
journalctl --vacuum-size=50M
Удалить журналы, оставив журналы только за последние 5 дней:
journalctl --vacuum-time=5d
Определить, сколько места занимает журнал на диске, используя флаг —disk-usage:
journalctl --disk-usage
Фильтрация по приоритету
Фильтрация может применяться к приоритету сообщения, если вы хотите отфильтровать конкретное сообщение, такое как “warning” или “error” и т.д.
Перечислены все уровни приоритета:
Приоритет | Код |
0 | emerg |
1 | alert |
2 | crit |
3 | err |
4 | warning |
5 | notice |
6 | info |
7 | debug |
Пример:
journalctl -p 3 -b
Или
journalctl -p err -b
Справка по утилите
journalctl --help
Или:
journalctl -h