35 lines
1.1 KiB
Markdown
35 lines
1.1 KiB
Markdown
# 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:
|
|
|
|
```bash
|
|
python3 -m venv .venv
|
|
source .venv/bin/activate
|
|
pip install -r requirements.txt
|
|
```
|
|
|
|
Then run one or more of the interval commands:
|
|
|
|
```bash
|
|
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`.
|
|
|
|
```bash
|
|
./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.
|