Skip to content

Задание 7: Финальный проект по Bash-скриптингу

Valentine requested to merge task-7 into main

ЗАВЕРШЕНИЕ МОДУЛЯ BASH-СКРИПТИНГА!

Финальный проект: Анализатор логов веб-сервера

Задание 7 объединяет ВСЕ изученные команды в одном полноценном проекте!

Что требовалось:

  • Написать скрипт для анализа access.log веб-сервера
  • Подсчитать количество уникальных IP-адресов
  • Вывести ТОП-5 IP-адресов по количеству запросов
  • Найти строки с HTTP 404 и сохранить в отдельный файл
  • Объединить команды: grep, awk, sort, uniq, условия и циклы

Что выполнено:

  • Создан анализатор логов log_analyzer.sh - полноценный скрипт для DevOps
  • Тестовый файл access.log с 13 записями веб-сервера
  • Подсчет уникальных IP: 7 уникальных адресов
  • ТОП-5 активных IP: с количеством запросов каждого
  • Поиск ошибок 404: найдено 3 ошибки, сохранены в errors_404.log
  • Расширенная статистика: коды ответов, HTTP методы, популярные страницы
  • Демо-скрипт bash_commands_demo.sh с пошаговыми примерами
  • Объединение ВСЕХ команд: grep → awk → sort → uniq → head

Файлы финального проекта:

  • task-7/log_analyzer.sh - основной анализатор логов
  • task-7/access.log - тестовые данные веб-сервера
  • task-7/errors_404.log - автоматически созданный файл с ошибками
  • task-7/bash_commands_demo.sh - демонстрация техник объединения команд
  • task-7/README.md - полная документация проекта

Результаты работы анализатора: $ ./log_analyzer.sh access.log === Анализ логов веб-сервера ===

Уникальных IP-адресов: 7

ТОП-5 IP-адресов по количеству запросов: 3 192.168.1.2 3 192.168.1.1 2 10.0.0.2 2 10.0.0.1 1 192.168.1.4

Найдено ошибок HTTP 404: 3 Строки с ошибками HTTP 404 сохранены в errors_404.log

Статистика кодов ответов HTTP: 8 200 (успешные) 3 404 (не найдено) 1 500 (ошибка сервера) 1 302 (перенаправление)

Merge request reports

Loading