Metadata-Version: 2.4
Name: inferyx-monitoring
Version: 1.0.28
Summary: Monitor batch pipelines via API and email alerts — install and deploy on Linux servers from PyPI
Author-email: Inferyx DevOps <devops@inferyx.com>
License: Copyright (c) 2026 Inferyx. All rights reserved.
        
        Proprietary software. Unauthorized copying, distribution, or use is prohibited
        unless agreed in writing with Inferyx.
        
        For open-source release, replace this file with your chosen license (e.g. MIT, Apache-2.0)
        before publishing to public PyPI.
        
Keywords: batch,monitoring,pipeline,email,inferyx
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: System Administrators
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Operating System :: OS Independent
Classifier: Topic :: System :: Monitoring
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pandas>=2.0.0
Requires-Dist: requests>=2.31.0
Requires-Dist: python-dateutil>=2.8.2
Provides-Extra: admin
Requires-Dist: fastapi>=0.110.0; extra == "admin"
Requires-Dist: uvicorn[standard]>=0.27.0; extra == "admin"
Requires-Dist: pydantic>=2.0.0; extra == "admin"
Provides-Extra: dev
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"
Requires-Dist: check-manifest; extra == "dev"
Dynamic: license-file

# inferyx-monitoring

Monitor batch jobs from CSV, poll Inferyx API status, and send email (and optional Teams/Google Chat) alerts for failures, missed runs, long-running jobs, and missing API data.

**Package:** `inferyx-monitoring` · **CLI:** `inferyx-monitoring` · **Version:** `1.0.28` · [PyPI](https://pypi.org/project/inferyx-monitoring/)

---

## Documentation

| Document | Description |
|----------|-------------|
| **[docs/GUIDE.md](docs/GUIDE.md)** | Full pipeline guide — install, configure, operate, troubleshoot |
| **[docs/README.md](docs/README.md)** | Documentation hub |
| **[docs/versions/](docs/versions/README.md)** | Release notes for every version (1.0.15 – 1.0.27) |
| **[docs/ADMIN_UI.md](docs/ADMIN_UI.md)** | Optional web admin (OAuth, `.env`, batch CSV) |

**Latest release:** [1.0.28](docs/versions/1.0.28.md) — Admin CLI `--help` fix, Nginx production guide.

---

## Quick install

```bash
sudo mkdir -p /opt/pipeline-monitor && sudo chown inferyx:inferyx /opt/pipeline-monitor
sudo -u inferyx python3 -m venv /opt/pipeline-monitor/.venv
sudo -u inferyx /opt/pipeline-monitor/.venv/bin/pip install --upgrade pip inferyx-monitoring
sudo -u inferyx /opt/pipeline-monitor/.venv/bin/inferyx-monitoring --init-config --work-dir /opt/pipeline-monitor
```

Edit `/opt/pipeline-monitor/.env` and `batch_file.csv`, then follow **[docs/GUIDE.md](docs/GUIDE.md)** for test, systemd, and upgrade steps.

**Admin UI (optional):**

```bash
pip install 'inferyx-monitoring[admin]'
inferyx-monitoring-admin --help    # show options (does not start server on 1.0.28+)
```

Production setup with **Nginx + systemd**: [docs/ADMIN_UI.md](docs/ADMIN_UI.md)

---

## Version history

| Version | Summary |
|---------|---------|
| [1.0.28](docs/versions/1.0.28.md) | Admin CLI `--help` fix, Nginx docs |
| [1.0.27](docs/versions/1.0.27.md) | Admin UI, security, mail status text |
| [1.0.26](docs/versions/1.0.26.md) | Startup hotfix |
| [1.0.25](docs/versions/1.0.25.md) | Teams / Google Chat |
| [1.0.24](docs/versions/1.0.24.md) | PyPI docs |
| [1.0.21–23](docs/versions/1.0.21.md) | Email fixes |
| [1.0.20](docs/versions/1.0.20.md) | Auto migration |
| [1.0.15–19](docs/versions/1.0.15.md) | Schedule windows, structured email |

[→ All versions](docs/versions/README.md)

---

## Upgrade

```bash
sudo -u inferyx /opt/pipeline-monitor/.venv/bin/pip install --upgrade inferyx-monitoring
sudo systemctl restart inferyx-monitoring.service
```

Version-specific steps: **[docs/versions/](docs/versions/README.md)**

---

## Paths

| Item | Path |
|------|------|
| Install | `/opt/pipeline-monitor` |
| Config | `/opt/pipeline-monitor/.env` |
| Batch list | `/opt/pipeline-monitor/batch_file.csv` |
| Service | `inferyx-monitoring.service` |

---

## Troubleshooting

| Symptom | Fix |
|---------|-----|
| API errors | Base URL without `name=`; `PIPELINE_API_FILTER_BY_SCHEDULE_DATE=false` |
| No email | Check SMTP in `.env` |
| Service crash (1.0.25) | Upgrade to [1.0.26+](docs/versions/1.0.26.md) |
| Alert send error | Upgrade to [1.0.21+](docs/versions/1.0.21.md) |

Full table: **[docs/GUIDE.md § Troubleshooting](docs/GUIDE.md#troubleshooting)**
