The openITCOCKPIT PagerDuty Integration enables the transfer of host and service notifications to PagerDuty.
In contrast to our e-mail integration, PagerDuty can display and manage tickets of different sources in a structured way.
As soon as host or service issues occur, a PagerDuty ticket is created.
When using the PagerDuty App you can even receive notifications on this way easily on the smartphone. Multiple notifications about a host or service are grouped together in a ticket.
After configuring the two way integration, ticket acknowledgments are transferred to openITCOCKPIT.
The author of this, as well as a link to the ticket, will be displayed in the host / service acknowledgment message in openITCOCKPIT.
When the host or service regains the Up or Ok state, the PagerDuty Ticket is automatically closed, if it was still open.
Under "Configuration / PagerDuty" you can find the settings for the PagerDuty module.
|Field name||Required Field||Description|
|Api key||The API Key you got from PagerDuty|
|Integration Key||The Integration Key you got from PagerDuty after you created the Service|
|API URL||API URL of the PagerDuty service.|
|Enable Two-Way Integration|
Via the Two-Way Integration PagerDuty is able, to acknowledge host and service problems.
For this option it is required, that your openITCOCKPIT Server is accessible from the Internet.
Gives you the Webhook URL for PagerDuty from your openITCOCKPIT instance.
You need to create an openITCOCKPIT user defined API key first.
|Use Proxy Server||Determine if the configured proxy should be used|
For one-way integration, openITCOCKPIT can open tickets in PagerDuty, create an acknowledgment, and close tickets. Acknowledgments created in PagerDuty will not be sent to openITCOCKPIT.
openITCOCKPIT communicates with PagerDuty via API Version 2.
To do this, you must first create an api key. Therefore, navigate in the PagerDuty menu to the item Configuration → Api Access.
Then click on the "Create New Api Key" button, select a description and API version 2 and create the key.
In the next dialogue copy the Api Key to the openITCOCKPIT PagerDuty settings.
Since the api key is only displayed once, it should be backed up immediately.
Afterwards a new service has to be created.
Navigate to the menu item Configuration → Services and click on the “+ New Service” button.
Here it is important that you choose “openITCOCKPIT“ it the “Select a tool” select box as integration type.
The Incident Behavior has to be set to "Create incidents"!
Click "Add Service" and copy the "Integration Key".
With our two-way integration you can also acknowledge incidents in PagerDuty that are transferred to your openITCOCKPIT instance.
For the two-way integration, a webhook must also be created, as shown in the example.
Navigate in the PagerDuty menu to the item Configuration → Extensions.
Click on "+ New Extension", select the "Generic V2 Webhook" and use your openITCOCKPIT Service.
Copy the webhook url from the openITCOCKPIT PagerDuty settings to the URL field and replace "YOUR_API_KEY_HERE" with a new api key.
If your system is behind a proxy, you may need to adjust the hostname manually.
To generate the openITCOCKPIT api key click on your user profile in the top left corner and scroll to the end of the page. There you can add a new custom api key.
Click "Save" to save the extension.
Finally, all not yet copied parameters must be transferred to the openITCOCKPIT PagerDuty module configuration.
Don´t forget to save your changes.
To get notified after appearing an issue, the host / service contact need the PagerDuty notification commands.
Search in the openITCOCKPIT menu for "contacts" or go directly to "Basic Monitoring -> Contacts".
On the contacts page click on the cogwheel.
Edit the contact that PagerDuty should be notified about and add the "host-notify-by-pagerduty" command to host commands and the "service-notify-by-pagerduty" command to the service commands as shown in the example.
You are ready to start!
Feel free to contact us on the freenode IRC channel #openITCOCKPIT or send us an e-mail to firstname.lastname@example.org