Per-domain Nginx log analytics with hybrid static reports and live insights.
| scripts | ||
| templates | ||
| tests | ||
| .gitignore | ||
| AGENTS.md | ||
| LICENSE | ||
| README.md | ||
| requirements.txt | ||
| run-import.sh | ||
ngxstat
Per-domain Nginx log analytics with hybrid static reports and live insights.
Generating Reports
Use the generate_reports.py script to build aggregated JSON and HTML files from database/ngxstat.db.
Create a virtual environment and install dependencies:
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
Then run one or more of the interval commands:
python scripts/generate_reports.py hourly
python scripts/generate_reports.py daily
python scripts/generate_reports.py weekly
python scripts/generate_reports.py monthly
Reports are written under the output/ directory. Each command updates the corresponding <interval>.json file and produces an HTML dashboard using Chart.js.
Importing Logs
Use the run-import.sh script to set up the Python environment if needed and import the latest Nginx log entries into database/ngxstat.db.
./run-import.sh
This script is suitable for cron jobs as it creates the virtual environment on first run, installs dependencies and reuses the environment on subsequent runs.