Skip to content

khalmatay/log-analyzer

Repository files navigation

Анализатор логов


Установка и запуск

Шаг 1: Клонирование репозитория

git clone https://github.com/central-university-dev/3-python-khalmatay.git

Шаг 2: Установка зависимостей

export env_name="3-python-khalmatay"

conda create -n $env_name python=3.10

conda activate $env_name

conda install --file requirements.txt

Шаг 3: Запуск Анализатора

 python src/analyzer.py --path "logs/*.txt" --from 2024-11-01 --format markdown
 python src/analyzer.py --path https://raw.githubusercontent.com/elastic/examples/master/Common%20Data%20Formats/nginx_logs/nginx_logs
 python src/analyzer.py --path "logs/*.txt" --from 2024-11-01  --filter-field user_agent --filter-value "Mozilla*"
 python src/analyzer.py --path "logs/*.txt" --from 2024-11-01  --filter-field method --filter-value "GET"

Шаг 4: Запуск тестов

pytest -v

Параметры

Параметр Описание Пример
--path Путь к логам (может быть локальный путь или URL). "logs/*.txt" или "http://example.com/logs"
--from Начальная дата для фильтрации логов (формат ISO8601). "2024-11-01"
--to Конечная дата для фильтрации логов (формат ISO8601). "2024-12-01"
--format Формат отчета (markdown или adoc). markdown
--filter-field Поле для фильтрации (например, method, user_agent). "user_agent"
--filter-value Значение для фильтрации (регулярное выражение). "Mozilla.*"

📂 Структура проекта

3-python-khalmatay/

│
├── src/
│   ├── __init__.py               
│   ├── analyzer.py                   
│   ├── log_collect_statistics.py              
│   ├── log_filter.py           
│   ├── log_generate_report.py         
│   ├── log_parser.py 
│   ├── log_reader.py   
│   ├── main.py                    
│  
│
├── tests/                        
│   ├── __init__.py               
│   ├── test_analyzer.py                   
│   ├── test_log_collect_statistics.py              
│   ├── test_log_filter.py           
│   ├── test_log_generate_report.py         
│   ├── test_log_parser.py 
│   ├── test_log_reader.py   
│   ├── test_main.py
│   ├── confest.py              
              
├── analyzer_output.adoc
├── analyzer_output.md
├── README.md               

Результаты

analyzer_output.md

analyzer_output.adoc

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •