
PagerDutyとJira Service Managementをインテグレーションしてみた
こんにちは。たかやまです。
PagerDutyでインシデント対応を行う際、インシデント情報をチケット管理システムで管理したいケースがあると思います。
PagerDutyはJira Cloudと連携する機能を提供しており、JiraとJira Service Management両方で利用できます。他のチケット管理ツールではServiceNowやZendeskとの連携も可能です。
本記事では、PagerDutyとJira Cloudを連携させて、インシデント発生時に自動でJiraチケットを起票する設定手順を解説します。
ブログ内ではJira Service Managementを使って検証しています。
さきにまとめ
PagerDutyとJira Cloudを連携すると、以下のことができます。
- PagerDutyインシデント発生時にJiraチケットの自動起票
- PagerDutyインシデントの
Triggered/Acknowledged/Resolvedステータスの遷移に合わせてJiraチケットのステータスを自動更新- Status mappingを利用する際は、指定したJiraステータスへ直接遷移できる必要があります
- PagerDutyとJira間でノート/コメントを双方向同期
- Jira課題の条件(JQL)に基づいてPagerDutyインシデントを自動作成
- インシデントの優先度をJiraの優先度フィールドにマッピング
PagerDutyとJira Cloud連携について
PagerDutyは「PagerDuty Jira Cloud Extension」という拡張機能を提供しており、Jira Cloudと双方向に連携できます。
JiraとJira Service Managementの両方に対応しています。Atlassian MarketplaceにはPagerDutyが提供する「PagerDuty for Jira Cloud」アプリがあり、この2つを組み合わせることで連携を実現します。
この連携により、PagerDutyでインシデントが発生すると自動的にJiraチケットが起票され、インシデントがResolvedになるとチケットのステータスも自動更新されます。
やってみた
前提条件
本記事の手順には以下の環境と権限が必要です。
- PagerDutyアカウント(Account Owner または Admin 権限)
- Jira Cloud環境(Site Administrator 権限)
私の環境ではJira Service Managementプロジェクトで検証しています。
Jira Cloud Integration Guide - Requirements | PagerDuty
[PagerDuty] Jira Cloud Extensionを追加する
まずPagerDuty側でJira Cloud Extensionを追加します。
PagerDutyのダッシュボードから「Integrations」>「Extensions」へ移動します。

「New Extension」ボタンをクリックします。

拡張機能の一覧から「Jira Cloud」を選択します。

Jira connection codeの入力画面が表示されます。
設定にはJira側でのコードが必要なので、次にJira側の設定を行います。

[Jira] PagerDuty for Jira Cloudをインストールする
ここからはJira側の設定になります。
Atlassian Marketplaceから「PagerDuty for Jira Cloud」をインストールします。
PagerDuty for Jira Cloud | Atlassian Marketplace にアクセスし、「Get it now」をクリックします。

ログインが必要な場合
以下のような画面が表示される場合はAtlassianアカウントへのログインが必要です。

ログインすると、Jiraサイトの選択画面が表示されます。PagerDuty連携を設定したいサイトを選択してください。

選択したサイトでインストール対象のアプリが表示されるので、内容を確認して「Review」をクリックします。

PagerDuty for Jira Cloudの詳細情報が表示されます。権限やアプリの説明を確認し、問題なければ「Get it now」をクリックしてインストールを進めます。

インストールが完了すると、以下の画面が表示されます。「Configure」ボタンをクリックします。

Configure画面でJira connection codeが表示されるので、このコードをコピーします。

[PagerDuty] Jira connection codeを入力する
先ほど開いたPagerDutyの画面に戻り、コピーしたJira connection codeを入力します。

連携が成功すると、Extensions一覧にJira Cloudが追加されていることを確認できます。

[PagerDuty] Jira Configuration(インシデント→チケット起票ルール設定)
ここからは、PagerDutyのインシデント状態に応じてJiraチケットを自動で起票・更新する設定を行います。
Extensions一覧からJira Accountを選択します。

Jira Cloud Configuration画面が表示されるので、「New Configuration」をクリックします。

Jira Configurationでは以下の設定が行えます。
| セクション | 設定項目 | 必須/オプション | 説明 |
|---|---|---|---|
| Mapping Jira Project to PagerDuty | Jira Project | 必須 | チケット起票先のJiraプロジェクト |
| PagerDuty Service(s) | 必須 | 連携するPagerDutyサービス | |
| Configuration Details | Configuration name | 必須 | マッピングを識別するための名前 |
| Issue Type | 必須 | 起票するチケットタイプ(JIRA作業タイプ) | |
| Jira Issue Creation(一方向) | Creation Type | 必須 | 課題作成のタイミング(自動作成 or 手動作成) |
| Jira Field mapping | オプション | PagerDutyとJiraのフィールドをカスタムマッピング | |
| Jira Test Issue | オプション | テスト課題を作成して設定動作を確認 | |
| PagerDuty Incident Creation with JQL(一方向) | Create an incident... | オプション | JQL条件に一致したJira課題からインシデント自動作成 |
| JQL Statement | オプション | インシデント作成条件となるJQL式 | |
| Sync Notes(双方向) | Sync notes to issues | オプション | PagerDutyとJira間でノート/コメントを双方向同期 |
| Account for note syncing | オプション | ノート同期に使用するPagerDutyユーザー | |
| Status mapping(双方向) | Triggered | オプション | インシデントがTriggeredになったときのJiraステータス |
| Acknowledged | オプション | インシデントがAcknowledgedになったときのJiraステータス(PagerDuty→Jiraのみ) | |
| Resolved | オプション | インシデントがResolvedになったときのJiraステータス | |
| Priority mapping | PagerDuty Priority | オプション | PagerDutyのインシデント優先度をJiraの優先度項目と対応付けする設定 |
| Jira Priority | オプション | Jira側の優先度項目にPagerDutyの優先度をマッピングする設定 |
項目画像

今回の私の環境での設定ではTriggeredになったタイミングでJiraチケットが自動で起票され、Resolvedになるとステータスが更新されるように設定しました。
設定した内容は以下のようになります。

Status mappingを利用する際は、指定したJiraステータスへ直接遷移できる必要があります。
Jiraワークフローで遷移条件が制限されている場合、PagerDutyからそのステータスへの遷移はできないので注意が必要です。
Jiraワークフロー例
本ケースにおけるJira Service Managementワークフローの設定は以下の通りです。
設定内容としては、まずPagerDutyインシデントがTriggeredになると、Jira側で「インシデント発生」ステータスのチケットが自動で作成されます。
さらに、インシデントがResolvedになることで、そのチケットのステータスが「インシデント回復」へと自動で更新される動作となっています。

動作確認
動作確認はJira Test Issue の 「Create a Test Issue」から確認することができます。

正常にチケットが起票されると作成されたJiraチケットリンクが表示されます。

Jiraチケットリンクを表示すると、 PagerDuty Incident title というチケットが起票されていることを確認できます。
アクティビティからもStatus mappingで設定した内容でステータス遷移が行われていることを確認できます。

最後に
本記事では、PagerDutyとJira Cloudを連携させ、インシデント発生時に自動でJiraチケットを起票する設定手順を解説しました。
私の環境ではJira Service Managementで検証しましたが、Jiraでも同様の手順で連携できます。
この連携により、PagerDutyでのインシデント対応とJiraでのチケット管理を統合し、対応履歴を一元管理できるようになります。
PagerDutyとJiraを併用している環境では、ぜひこの連携を試してみてください。
以上、たかやま(@nyan_kotaroo)でした。










