ZenPack Development Guide

From Zenoss Wiki
This is the approved revision of this page, as well as being the most recent.
Jump to: navigation, search

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.

Example ZenPacks

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.
MikroTik (source)
Example of simple SNMP device monitoring.
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.
CloudStack (source)
Another example similar to oVirt. Slightly simpler.
PostgreSQL (source)
Another example similar to OpenStack that uses a third-party Python library. Also does nested components.
CloudFoundry (source)
Another example similar to OpenStack. Custom-build protocol library for HTTP API.