This repository provides a starter backbone for the Guardian 1.0 design:
- Blazor-based Control Console (UI)
- .NET 8 Backend Service (worker)
- Shared contracts for configuration and alerting rules
src/
Guardian.Contracts/
ConfigurationV1.cs
Guardian.ControlConsole/
README.md
appsettings.json
Guardian.BackendService/
README.md
appsettings.json
Program.cs
config-samples/
guardian-config.v1.sample.json
- SMTP parameters
- Monitored services list
- Disk thresholds (non-critical + critical)
- Refresh interval
- Cooldown policies for:
- Service stop events (5 min)
- Disk non-critical events (24 h)
- Disk critical events (1 h)
- Reads configuration file generated by UI
- Runs timer-based monitoring loop
- Periodic monitoring worker implemented
- Service status checks (Linux
systemctl, Windowssc.exe) - Disk occupancy checks for local machine
- SMTP alert sender with cooldown policy and critical override handling
- Installation scripts for Linux systemd and Windows service
- UI project config file includes path for backend JSON generation target
- Placeholder notes for:
- Auto-refresh service list
- Service selection
- Disk check setup
- SMTP setup
- Generate JSON config action
- Build Control Console forms for SMTP/service/disk settings.
- Implement JSON export to backend config file.
- Implement backend probes (service + disk).
- Implement SMTP sender and policy engine.
- Add integration tests and deployment packaging.
- Add database monitoring
Open Guardian.sln in Visual Studio to load the backbone projects:
Guardian.Contracts(shared contracts)Guardian.BackendService(worker skeleton)Guardian.ControlConsole(web UI placeholder)