Initial InfraPulse scaffold
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
# Plugin Design
|
||||
|
||||
Plugins will let InfraPulse add collectors and discovery logic without hard-coding every integration into the core API.
|
||||
|
||||
Target shape:
|
||||
|
||||
```python
|
||||
class InfraPulsePlugin:
|
||||
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
|
||||
Reference in New Issue
Block a user