# 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.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.0...HEAD [0.1.0]: https://tea.ffw-ak-ff.de/FFW-VG-AK-FF/watchdog-docker/releases/tag/v0.1.0