145 lines
4.3 KiB
Markdown
145 lines
4.3 KiB
Markdown
# Changelog
|
|
|
|
Alle wichtigen Änderungen an diesem Projekt werden in dieser Datei dokumentiert.
|
|
|
|
Das Format basiert auf [Keep a Changelog](https://keepachangelog.com/de/1.0.0/).
|
|
|
|
## Versionierung
|
|
|
|
- **Große Änderungen** (neue Features, Breaking Changes): +0.1 (z.B. 0.1 → 0.2)
|
|
- **Kleine Änderungen** (Bugfixes, kleinere Verbesserungen): +0.0.1 (z.B. 0.1 → 0.1.1)
|
|
- **Major Release** (1.x): Nur auf Anweisung
|
|
|
|
## [Unreleased]
|
|
|
|
### In Arbeit
|
|
- Entwicklung läuft im `develop` Branch
|
|
|
|
---
|
|
|
|
## [0.1.1] - 2026-02-16
|
|
|
|
### Changed - Verbesserte Funktionalität
|
|
|
|
- 📝 **Verbessertes Logging-System**
|
|
- Separates `logs/` Verzeichnis (statt `data/`)
|
|
- Automatische Log-Rotation mit `RotatingFileHandler`
|
|
- Maximale Größe: 10 MB pro Datei
|
|
- Backup-Count: 5 Dateien
|
|
- Separate Error-Logs (`error.log`) mit vollständigem Traceback
|
|
- Konfigurierbare Log-Größe und Rotation in `config.yaml`
|
|
- Bessere Console-Ausgabe (kürzeres Format)
|
|
|
|
### Technical Details
|
|
- `app/main.py`: Implementierung von RotatingFileHandler
|
|
- `config/config.yaml`: Neue Logging-Optionen (max_bytes, backup_count, error_file)
|
|
- `docker-compose.yml`: Volume-Mapping für logs/ Verzeichnis
|
|
- `.gitignore`: Log-Dateien und Rotationen ausgeschlossen
|
|
|
|
### Dateien
|
|
```
|
|
logs/
|
|
├── watchdog.log # Haupt-Log (alle Meldungen)
|
|
├── watchdog.log.1-5 # Rotierte Backups
|
|
├── error.log # Error-Log (nur Fehler)
|
|
└── error.log.1-5 # Rotierte Error-Backups
|
|
```
|
|
|
|
---
|
|
|
|
## [0.1.0] - 2024-02-16
|
|
|
|
### Added - Neue Features
|
|
- ✨ **OPNsense Monitoring System** - Vollständiges Monitoring-System
|
|
- DHCP Lease Überwachung (filterbar nach Interface)
|
|
- Neue Geräte Erkennung via ARP (mit Known-Devices Abgleich)
|
|
- Interface Status Monitoring (up/down)
|
|
- Gateway Status Monitoring
|
|
|
|
- 🖥️ **Web Dashboard**
|
|
- Login-System mit Passwort-Schutz (Flask-Login)
|
|
- Responsive Bootstrap 5 Interface
|
|
- Echtzeit Event-Tabelle mit Auto-Refresh (10s)
|
|
- Filterung nach Event-Typ und Interface
|
|
- Statistik-Übersicht (Gesamt, Heute, Letzte Stunde, Bekannte Geräte)
|
|
|
|
- 📧 **E-Mail Benachrichtigungen**
|
|
- SMTP Support mit TLS
|
|
- HTML-formatierte E-Mails
|
|
- Event-spezifische Templates
|
|
- Startup-Benachrichtigung
|
|
- Intelligente Filterung (nur unbekannte Geräte bei new_device)
|
|
|
|
- 💾 **SQLite Datenbank**
|
|
- Events Tabelle mit vollständiger Event-Historie
|
|
- Known Devices Tabelle (auto-populated)
|
|
- Automatische Retention (alte Events löschen)
|
|
- Indizierung für schnelle Queries
|
|
|
|
- 🔧 **Konfiguration**
|
|
- Vollständig über `config/config.yaml` konfigurierbar
|
|
- OPNsense API Integration
|
|
- Monitoring-Intervall anpassbar
|
|
- Interface-Filterung
|
|
- Event-Toggles (einzeln an/ausschaltbar)
|
|
|
|
- 🐳 **Docker Support**
|
|
- Dockerfile mit Python 3.11-slim
|
|
- docker-compose.yml mit Healthcheck
|
|
- Volume-Mapping für config & data
|
|
- Auto-Restart
|
|
|
|
- 📚 **Dokumentation**
|
|
- Vollständige README mit Setup-Anleitung
|
|
- OPNsense API Setup Guide
|
|
- Troubleshooting Sektion
|
|
- CLAUDE.md für KI-assistierte Entwicklung
|
|
|
|
### Technical Details
|
|
- **Backend:** Python 3.11, Flask 3.0.0, APScheduler 3.10.4
|
|
- **Database:** SQLite mit JSON-Support
|
|
- **Frontend:** Bootstrap 5, Vanilla JavaScript
|
|
- **API Client:** Requests mit OPNsense REST API
|
|
- **Auth:** Flask-Login mit Werkzeug password hashing
|
|
- **Email:** SMTP mit HTML/MIME multipart
|
|
|
|
### Initial Files
|
|
```
|
|
watchdog-docker/
|
|
├── Dockerfile
|
|
├── docker-compose.yml
|
|
├── requirements.txt
|
|
├── README.md
|
|
├── CHANGELOG.md
|
|
├── CLAUDE.md
|
|
├── .gitignore
|
|
├── config/
|
|
│ └── config.yaml
|
|
├── app/
|
|
│ ├── main.py
|
|
│ ├── opnsense_api.py
|
|
│ ├── monitor.py
|
|
│ ├── database.py
|
|
│ ├── email_handler.py
|
|
│ └── templates/
|
|
│ ├── login.html
|
|
│ └── dashboard.html
|
|
└── data/
|
|
└── .gitkeep
|
|
```
|
|
|
|
---
|
|
|
|
## Legende
|
|
|
|
- **Added** - Neue Features
|
|
- **Changed** - Änderungen an bestehender Funktionalität
|
|
- **Deprecated** - Bald zu entfernende Features
|
|
- **Removed** - Entfernte Features
|
|
- **Fixed** - Bugfixes
|
|
- **Security** - Sicherheits-Fixes
|
|
|
|
[Unreleased]: https://tea.ffw-ak-ff.de/FFW-VG-AK-FF/watchdog-docker/compare/v0.1.1...HEAD
|
|
[0.1.1]: https://tea.ffw-ak-ff.de/FFW-VG-AK-FF/watchdog-docker/compare/v0.1.0...v0.1.1
|
|
[0.1.0]: https://tea.ffw-ak-ff.de/FFW-VG-AK-FF/watchdog-docker/releases/tag/v0.1.0
|