ZenPack Development Guide
You should start with zenpacklib when you need to go beyond bundling configuration in ZenPacks and start extending Zenoss in more sophisticated ways. zenpacklib is the ZenPack API.
The following ZenPacks are good examples of best practices in ZenPack development. Their source is publicly available.
- AWS (source)
- Complex example of auto-discovering guest devices, using a third-party Python module and Impact adapters.
- RabbitMQ (source)
- Example of nested component modeling and executing modeling and monitoring using shell commands run remotely over SSH.
- OpenStack (source)
- Example of bundling a third-party Python library and using it for modeling and collection.
- OpenVZ (source)
- Another example similar to RabbitMQ. Modeling and monitoring using shell commands run remotely over SSH.
- oVirt (source)
- Example of nested component modeling and non-containing relationships. Modeling and monitoring using an HTTP API.
- PostgreSQL (source)
- Another example similar to OpenStack that uses a third-party Python library. Also does nested components.