Start Using PagerDuty Today
Try PagerDuty free for 14 days — no credit card required.
Sensu Enterprise is a monitoring framework for servers, services, application health, and business KPIs. Sensu was designed from the ground up to monitor systems in the cloud, such as AWS EC2 instances, and to discover systems rather than have them specified in your configuration beforehand. Sensu Enterprise builds on Sensu Core by providing built-in integrations for services like PagerDuty, LDAP authentication, enterprise support and more.
This guide will walk you through the process of integrating Sensu Enterprise with PagerDuty. If you have any trouble completing the integration please contact us.
Note: The steps in this guide are applicable only to Sensu Enterprise. The free version, Sensu Core, does not include built-in PagerDuty integration, so there is a different Sensu Core Integration Guide which you should use if you do not have the enterprise version.
If you are creating a new service for your integration, click + 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 Add a new integration hyperlink.
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.
/etc/sensu/conf.d/pagerduty_handler.json
{
"pagerduty": {
"service_key": "YOUR-INTEGRATION-KEY-HERE"
}
}
pagerduty
to the set of handlers:
/etc/sensu/conf.d/default_handler.json
{
"handlers": {
"default": {
"type": "set",
"handlers": [
"pagerduty"
]
}
}
}
If you do not want PagerDuty to be a default handler, meaning you only want alerts from specifically defined checks to be sent to PagerDuty, open the configuration file for each check you want to send alerts to PagerDuty and add pagerduty
to the check’s handlers:
/etc/sensu/conf.d/YOUR-CHECK.json { "checks": { "YOUR-CHECK-NAME": { "command": "YOUR-CHECK-COMMAND", "subscribers": [ "YOUR-SUBSCRIBERS" ], "interval": YOUR-INTERVAL, "handlers": ["default", "pagerduty"] } } }
service sensu-enterprise reload
/etc/sensu/conf.d/check_cron.json { "checks": { "cron": { "command": "/etc/sensu/plugins/check-procs.rb -p cron", "subscribers": [ "test" ], "interval": 60, "handlers": "default" } } }
If you did not make PagerDuty a default handler, you’ll need to specify pagerduty
as a in handlers
like this:
"handlers": ["default", "pagerduty"]
service sensu-enterprise reload
service crond stop
Yes, using Sensu’s Contact Routing feature, you can specify multiple contacts in Sensu, each with a different PagerDuty Integration Key, then update your checks to specify the Sensu contact with the PagerDuty Integration Key you want to receive alerts.
Try PagerDuty free for 14 days — no credit card required.