Вопрос проверяет практические навыки работы с Linux, умение быстро находить ошибки в логах и фильтровать данные в командной строке.
Для анализа логов обычно используют tail, less, grep, awk, sed, head, sort, uniq, cut. Они помогают смотреть последние строки, искать по шаблону и агрегировать повторы. Для системных логов также используют journalctl. Важно уметь комбинировать команды через пайпы.
Анализ логов — это просмотр, фильтрация и извлечение полезной информации из текстовых файлов или системного журнала для диагностики проблем.
Перед списком важно отметить: начинать обычно нужно с удобного просмотра, а не с “сразу grep”.
less
Удобная прокрутка больших файлов
Поиск внутри (/pattern)
tail
Последние строки и “подписка” на обновления
head
Первые строки (иногда полезно для заголовков/формата)
Примеры:
less /var/log/app.log
tail -n 200 /var/log/app.log
tail -f /var/log/app.log
grep
Поиск по строкам
Часто с -n, -i, -E
rg (если доступен)
Быстрее и удобнее, но не всегда установлен
Примеры:
grep -n "ERROR" /var/log/app.log
grep -iE "timeout|failed" /var/log/app.log
Перед перечислением важно понимать: логи часто структурированы, и нужно доставать конкретные колонки.
awk
Извлечение полей по разделителю
cut
Быстрое выделение колонок
sed
Замены и чистка строк
Примеры:
awk '{print $1, $2, $NF}' /var/log/app.log
cut -d' ' -f1-3 /var/log/app.log
sed 's/user_id=[0-9]\+/user_id=<id>/g' /var/log/app.log
sort
uniq -c
Пример: топ частых сообщений:
grep "ERROR" /var/log/app.log | sort | uniq -c | sort -nr | head
journalctlЕсли сервис под systemd, логи часто смотрят так:
journalctl -u myservice --since "2026-02-17 00:00" --no-pager
journalctl -u myservice -f
Полезные флаги:
-u — юнит
-f — follow
--since/--until — окно времени
-p — уровень (например, ошибки)
Перед шагами важно зафиксировать практику: от общего к частному.
Посмотреть хвост лога (tail -n, journalctl --since)
Найти ключевые события (grep ERROR|WARN)
Выделить контекст (несколько строк вокруг)
Сгруппировать повторяющиеся ошибки (sort | uniq -c)
Достать поля (время, request_id, user_id) через awk/cut
Для анализа логов в Linux важны три группы инструментов: просмотр (less, tail), поиск (grep) и обработка (awk, sed, sort, uniq). Умение комбинировать их пайпами закрывает большинство задач диагностики.