Skip to content

etchedheadplate/log-report

Repository files navigation

English | Русский


Installation

git clone https://github.com/etchedheadplate/log-report.git
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Usage

python3 main.py --file FILE [FILE ...] [--report {average,median}] [--field FIELD] [--target TARGET] [--date DATE]

Examples

Default

Generate average {response_time} reports grouped by unique {url} entries from JSON log files:

python3 main.py --file exm/example1.log exm/example2.log --report average

default

Complex

Generate median {bytes_sent} reports grouped by {http_user_agent}/{os}/{name} for a specific date:

python3 main.py --file exm/example_ext.log --report median --field http_user_agent/os/name --target bytes_sent --date 2025-06-23

complex

Extending Reports

To add new report types, implement a new method in ReportGenerator prefixed with report_ that calls self._print_report(table_data, headers) with appropriate data formatted for the tabulate library.

Testing

pytest --cov=report

testing

License

MIT License

About

A CLI tool to generate and view reports from JSON logs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages