PagerDuty (dagster-pagerduty)
This library provides an integration with PagerDuty, to support creating alerts from your Dagster code.
Presently, it provides a thin wrapper on the Events API V2.
Getting Started
You can install this library with:
pip install dagster-pagerduty
To use this integration, you’ll first need to create an Events API V2 PagerDuty integration on a PagerDuty service. There are instructions here for creating a new PagerDuty service & integration.
Once your Events API V2 integration is set up, you’ll find an Integration Key (also referred to as a “Routing Key”) on the Integrations tab for your service. This key is used to authorize events created from the PagerDuty events API.
Once your service/integration is created, you can provision a PagerDuty resource and issue PagerDuty alerts from within your ops.
- dagster_pagerduty.PagerDutyService ResourceDefinition
- This resource is for posting events to PagerDuty. 
Legacy
- dagster_pagerduty.pagerduty_resource ResourceDefinition
- A resource for posting events (alerts) to PagerDuty. - Example: - @op
 def pagerduty_op(pagerduty: PagerDutyService):
 pagerduty.EventV2_create(
 summary='alert from dagster',
 source='localhost',
 severity='error',
 event_action='trigger',
 )
 @job(resource_defs={ 'pagerduty': pagerduty_resource })
 def pagerduty_test():
 pagerduty_op()
 pagerduty_test.execute_in_process(
 run_config={
 "resources": {
 'pagerduty': {'config': {'routing_key': '0123456789abcdef0123456789abcdef'}}
 }
 }
 )