Zenoss is a very popular open source network, server and application monitoring system used by thousands of IT organizations. It provides one of the best event management systems available in any open source monitoring system. The plug-in architecture of Zenoss allows it to be extensible by anyone.PagerDuty extends Zenoss’s functionality by providing on-call scheduling, alerts and incidents tracking through the PagerDuty API. You are notified of the most critical Zenoss events by PagerDuty so you are able to take immediate action.
This guide describes how to integrate your Zenoss 4 installation with the PagerDuty ZenPack. You might need to slightly alter these instructions depending on your exact Linux distribution and your Zenoss configuration. If you are having trouble completing the installation, please contact us.
If you are creating a new service for your integration, click +Add New Service.
If you are adding your integration to an existing service, click the name of the service you want to add the integration to. Then click the Integrations tab and click the +New Integration button.
If you are creating a new service for your integration, in General Settings, enter a Name for your new service. Then, in Incident Settings, specify the Escalation Policy, Notification Urgency, and Incident Behavior for your new service.
Note: You may create multiple Generic API integrations for use with different PagerDuty policies. Zenoss 4 can be aligned to any number of different PagerDuty accounts and Generic API integrations.
sudo -u zenoss /opt/zenoss/bin/zenoss restart
You will now see PagerDuty under ADVANCED > Settings:
Note: Once you hit the Apply button, the list of all PagerDuty Generic API services will populate. If your service does not show up, confirm your settings and verify that your services is of type Generic API within PagerDuty.
To verify that everything is working, you’ll want to trigger a new alert within Zenoss, which will in-turn trigger an incident within PagerDuty. When viewing the details for an incident, you can use the View in Zenoss link to take you to the event within your Zenoss web interface.
This is an issue with the version of Python that you have installed. You can either install the ZenPack from source or change the filename from “ZenPacks.PagerDuty.APINotification-1.0.0-py2.71.egg” to “ZenPacks.PagerDuty.APINotification-1.0.0.egg” and then reinstall the ZenPack.
This is easy to do with the current integration, as each Zenoss notification can be associated with a PagerDuty service. You would just need to add multiple notifications within Zenoss to tie to each of your PagerDuty services.
If a PagerDuty server can’t be reached for any reason, Zenoss will re-send the notification to PagerDuty every 60 seconds. This is configurable under the notification configuration.
You should configure an external ping check service to monitor your site’s external connectivity. Of course, you can use PagerDuty to forward alerts from these services.
PagerDuty does not support unacknowledged incidents. The event will remain as acknowledged within PagerDuty until it is resolved.
Other event properties can be found in Section 7.1.2 (Page 89) of the ZenOSS Core Administration Guide. Note: The Incident Key needs to be unique per incident.
You can do this by editing the
~zenoss/.bashrc file to include the http_proxy and https_proxy environment variables. The lines added would look like:
export http_proxy=http://my.proxyserver.com:3128/ export https_proxy=http://my.proxyserver.com:3128/
For the changes to take effect, you must either fully stop and start the Zenoss service or reboot the server.
Please contact us if you’re unable to sort out the difficulty.