ℹ️ Если вам часто приходится анализировать логи в системе с systemd, стандартные команды вроде journalctl -fu <service> могут быть неудобны из-за медленной навигации. Вот несколько полезных трюков, которые помогут вам быстрее работать с логами.
📂 1. Просмотр логов в реальном времени с цветами и улучшенной навигацией
Обычный journalctl не выделяет важные события цветами. Давайте добавим подсветку:
journalctl -fu <service> --no-pager | ccze -A❔ ccze – это утилита для раскрашивания логов, делает их более читаемыми. Установить можно так:
sudo apt install ccze # Debian/Ubuntu
sudo dnf install ccze # RHEL/CentOS👨💻 2. Фильтрация логов по уровню критичности
Хотите увидеть только ошибки и критические сообщения? Используйте фильтр:
journalctl -p 3 -u <service> --since "1 hour ago"❔ Уровни логирования:
- •
0- Emergency - •
1- Alert - •
2- Critical - •
3- Error - •
4- Warning - •
5- Notice - •
6- Info - •
7- Debug
🖥 3. Поиск по ключевым словам без мусора
Если вам нужно найти конкретное событие в логах:
journalctl -u <service> | grep -i "ошибка|failed|timeout"Но лучше использовать встроенный фильтр, который быстрее:
journalctl -u <service> | awk '/ошибка|failed|timeout/ {print}' <code></code>Или:
journalctl -u <service> | rg "ошибка|failed|timeout" # ripgrep — быстрее
grep👨💻 4. Вывод логов в JSON для анализа
Если нужно парсить логи программно или передавать их в другие системы, выводите в JSON:
journalctl -u <service> -o json-prettyМожно передавать это в jq для фильтрации:
journalctl -u <service> -o json | jq '.MESSAGE'⚡️ 5. Ускорение journalctl в системах с большим объёмом логов
Если journalctl работает медленно, попробуйте индексированный поиск:
journalctl --disk-usage # Узнать, сколько места занимает
journalctl --vacuum-time=2d # Удалить старые логи старше 2 дней
journalctl --vacuum-size=500M # Ограничить размер логов✳️ Эти трюки помогут вам быстро анализировать логи, находить ошибки и работать с журналами эффективнее.
tags: #полезно #логирование #linux
🧭 @recura_tech



