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.