702 B
702 B
Plugin Design
Plugins will let OrbitWard add collectors and discovery logic without hard-coding every integration into the core API.
Target shape:
class OrbitWardPlugin:
name: str
display_name: str
def test_connection(self, target, credentials):
pass
def discover(self, target, credentials):
pass
def collect(self, monitor):
pass
def default_alert_rules(self, discovered_item):
pass
The first implementation can use simple internal collectors, but the interfaces should preserve this path.
Planned plugin areas:
- Website checks
- Generic SNMP
- Proxmox VE
- Docker
- UniFi
- TrueNAS
- Technitium DNS
- Active Directory