Dynatrace と Jira を統合して可観測性を向上させる方法

Rob Jahn 氏、Dynatrace テクニカル パートナー マネージャーおよび DevOps エバンジェリスト
このチュートリアルでは、Dynatrace の監視対象環境で自動検出された問題について、新しい Jira 課題を自動生成する方法について詳述します。Jira Automation を有効にして問題管理に双方向の統合を作成する方法を学習します。
可観測性プラットフォームを Jira と統合する必要があるのはなぜですか?
Dynatrace と Jira の簡単ですぐに使える統合によって、監視対象の環境で Dynatrace が検出した問題のレポートを完全に自動化することで、手作業が削減されます。レポートは組織の Jira プロジェクトに直接送信されます。
所要時間
読む時間 15 分。2 ~ 3 時間で完了します。
対象者
Jira におけるスクラムやカンバンの仕組みに精通しているユーザー。
スクラム ボードまたはカンバン ボードのすべてのプロジェクトに対してプロジェクト管理者権限を持つユーザー。詳細については「プロジェクト権限の管理」をご参照ください。
Dynatrace 環境の管理者権限を持つユーザー。詳細については「Dynatrace を開始する」をご参照ください。
Linux コマンドの基本的な知識があるユーザー。
前提条件
Jira アカウントを持ち、Jira の基本的な知識があるユーザー。こちらから Jira を開始してください。
Dynatrace 環境があるユーザー - Dynatrace の 15 日間無料トライアルを入手してください。
Dynatrace が提供するサンプル アプリケーションを実行するには、Linux ホストが必要です。仮想マシンにインストールするための要件と手順については、この README に記載されているインストール手順に従ってください。
この同じ Linux ホストに Dynatrace OneAgent がインストールされている必要があります。
詳細をご覧ください。
Jira におけるスプリントの使用方法に関する詳細については「スプリント チュートリアル」をご確認ください。
ご質問はこちらまで。アトラシアンコミュニティ
概要
このチュートリアルは、相互に作用するいくつかのコンポーネントに依存します。このチュートリアルでは、次のことを行います。
1. Jira 課題に URL を含む Dynatrace 問題カードのコメントを作成するように、Jira Automation を構成します。
2. 問題を Jira にプッシュするように Dynatrace を構成します。
3. サンプル アプリケーションで問題をトリガーして、Dynatrace が問題を検出して Jira 課題を自動作成する方法を確認します。
4. Dynatrace リリース ページ内で、Jira 課題のクエリを構成します。
5. 環境をクリーンアップします。
この図は、このチュートリアルのコンポーネントと、コンポーネント間の基本的な相互作用を示しています。

1. Dynatrace によってアプリケーションを監視 – このチュートリアルでは、Dynatrace は、サンプル アプリケーションを実行するホストにインストールされた Dynatrace エージェントから指標を収集します。すべてのデータは、中央の Dynatrace テナントに一元化されます。Dynatrace テナントには、管理用と AI 搭載問題検出用の Web インターフェイスも用意されています。
2. 詳細なコンテキストによる問題通知 – Dynatrace の AI エンジンである Davis は、統一されたエンティティ モデルにマッピングされた忠実度の高い指標、トレース、ログ、実際のユーザー データを使用します。Davis の決定論的な AI を使用して、問題の正確な根本原因を明らかにします。Davis は正確な根本原因を特定するだけでなく、有用なコンテキストを瞬時に提供します。問題がリソースのボトルネックやデプロイの変更の結果であるかどうかだけに留まらず、その背後にいる人物さえ把握できます。問題を再現して、その発生理由と修正方法を完全に理解できます。
3. Jira 課題の自動作成 – Dynatrace と Jira の統合によって、Dynatrace 環境で自動検出されたすべての新しい問題の課題が自動発行されます。
4. Jira Automation による Dynatrace のアップデート – Jira の Automation はコード不要な機能であり、数回のクリックで簡単にルールを構築できます。Dynatrace API への Web リクエストは、Dynatrace の問題 ID を使用して Dynatrace の問題カードのコメントをアップデートします。
5. 問題を解決して Jira 課題をクローズ
セットアップ
このチュートリアルを完了するには、チュートリアルのユース ケースを進める前に、いくつかのセットアップ ステップが必要です。
ステップ 1: Dynatrace によって、アプリケーションが監視されていることを確認する
1. 提供されているサンプル アプリケーションが、ブラウザで表示できる必要があります。ホームページは次のようになります。

2. Dynatrace 内で、左側のメニューを使用して [Transactions and services (トランザクションとサービス)] オプションをクリックし、実行中のサービスを表示します。フロントエンド サービスと注文サービスを含む、複数のサービスが実行されています。

3. フロントエンド サービスをクリックします。サービス ページで [View dynamic requests (動的リクエストを表示)] ボタンをクリックします。

以下に示すように、サービスへのリクエストが表示されています。

ステップ 2: Dynatrace API トークンを作成する
Dynatrace API を使用するには、有効な API トークンを認証する必要があります。Dynatrace API はきめ細かいので、トークンに適切な権限を割り当てる必要があります。この Dynatrace API トークンは、ステップ 4 で構成する Jira Automation ルールに必要です。
1. Dynatrace 内の左側のメニューで [設定] オプションをクリックします。
![[デプロイ ステータス] の [設定] オプション](https://dam-cdn.atl.orangelogic.com/AssetLink/1t7alb860x7aq5fnv35oavh2frymqt6t.png)
2. 設定サブメニューで、[統合] サブメニューを展開して [Dynatrace API] オプションを選択します。
![[トークン設定] の [Dynatrace API]](https://dam-cdn.atl.orangelogic.com/AssetLink/383v0fo16r06d14146ag2o4pjpu53163.png)
3. [Dynatrace API] ページで [トークンを生成] ボタンを選択します。
4. Jira チュートリアルなどのトークン名を指定します。
5. [API v1] セクションを展開して [Access problem feed, metrics, and topology (問題のフィード、指標、トポロジにアクセス)] スコープを有効にします。その他のスコープはすべてオフのままにします。
![[Access problem feed, metrics, and topology (問題のフィード、指標、トポロジにアクセス)] の切り替え](https://dam-cdn.atl.orangelogic.com/AssetLink/0bift82xpui8uvi78vc8f84jbu883046.png)
6. [生成] ボタンをクリックします。
7. 重要: 生成されたトークンを安全な場所に保存する必要があります。この値はチュートリアルの後半で必要になり、再表示できません。[コピー] ボタンを使用して、文字列全体を取得するようにします。
8. トークンを安全な場所に保存したら [閉じる] ボタンをクリックします。
ステップ 3: Jira プロジェクトを作成する
このチュートリアル専用の Jira プロジェクトによって、完了後にプロジェクトを削除できます。各 Jira プロジェクトには名前とプロジェクト キーがあります。Jira プロジェクト キーは、ステップ 6 の Dynatrace 問題通知構成に必要です。
1. Jira アカウントで、[プロジェクト] メニューから [プロジェクトを作成] オプションを選択します。
2. 「Dynatrace チュートリアル」という名前を入力して [カンバン] テンプレートを選択し、[作成] ボタンをクリックします。
![[プロジェクトを作成] ウィンドウ](https://dam-cdn.atl.orangelogic.com/AssetLink/flf7a6jx6rn324s1xr85suh87iw4y5b2.png)
3. 重要: Jira プロジェクト キーを書き留めておいてください。この値は Dynatrace の構成で必要になります。上記の例では、キーは「DT」です。
ステップ 4: Jira Automation ルールを作成する
このステップでは、新しい Jira コメントに対してトリガーされる自動化ルールを設定します。トリガーされると、Jira Automation ルールは Dynatrace Problem API に、Jira コメントのテキストを Dynatrace の問題に追加するように指示します。
1. 左側のプロジェクト メニューから [プロジェクト設定] を選択します。
2. 左側のプロジェクト設定メニューで [自動化] を選択します。
3. [自動化] ページで、上部の [ルール] タブをクリックしてプロジェクト ルールに移動します。
![左側のナビゲーションの [自動化] と右側の [ルール] タブ](https://dam-cdn.atl.orangelogic.com/AssetLink/7f520p0c73q5x7nywh756d88eo0nv8ea.png)
4. 右上の [ルールを作成] ボタンをクリックします。
5. [新しいトリガー] ページで、[課題にコメントが付きました] という名前のトリガー、次のページで [保存] の順に選択します。

6. [コンポーネントを追加] ページ ルールで [新規アクション] オプションをクリックします。
![[コンポーネントを追加] ウィンドウの [新規アクション]](https://dam-cdn.atl.orangelogic.com/AssetLink/273u52573o7373ohxk5d74psto1i7572.png)
7. [新規アクション] ページで [Send Web Request (Web リクエストを送信)] 通知オプションを選択します。

8. 以下の詳細情報を入力します。完了すると、以下の例のようになります。

[Webhook URL] – Dynatrace API エンドポイントへの URL です。この文字列の [YOUR-ENVIRONMENT-ID] を、ご使用の環境に置き換える必要があります。この値を取得するには、Dynatrace 環境の URL をご参照ください。
https://[YOUR-ENVIRONMENT]/api/v1/problem/details/{{issue.description.match(".*pid=(.*)")}}/commentsテクニカル ノート: Jira Match スマート値式は、課題の説明に含まれる問題 URL から Dynatrace の問題または PID を抽出します。regex101 などの Web サイトは、これらの式を構築する際に役立ちます。

[ヘッダー] – 先に作成済みの Dynatrace API トークンの値が含まれます。ヘッダー名には Authorization の値を使用します。ヘッダー値は、この文字列を使用してトークン値 Api-Token [YOUR-DYNATRACE-API-TOKEN] で置き換えます。注: トークン文字列の前にスペースを追加して、Api-Token を含める必要があります。
[HTTP Method (HTTP メソッド)] – [POST] オプションを選択します。
[Webhook Body (Webhook 本文)] – ドロップダウン リストから、[Custom Body (カスタム本文)] を選択して、JSON 本文全体に貼り付けます。
{"message": "Opened Jira Issue: [{{issue.key}}]({{issue.url}})","context": "Jira"}*** プロのヒント: スマート値の詳細は、こちらをご覧ください: https://support.atlassian.com/jira-software-cloud/docs/smart-values-general/
9. [保存] ボタンをクリックします。
10. 次のページで、「課題作成時に Dynatrace にコメントを送信」などの名前を入力して [オンにする] ボタンをクリックします。

11. 保存後に、右上の [Return to list (リストに戻る)] リンクをクリックすると、新しいルールが有効になっています。
![[自動化] ウィンドウ](https://dam-cdn.atl.orangelogic.com/AssetLink/6fs5575r17i82ob44kfjgvk240ksu3jg.png)
ステップ 5: Jira API トークンを作成する
Atlassian API トークンを使用して、Atlassian Cloud 製品でスクリプトまたはその他のプロセスを認証します。トークンは Atlassian アカウントから生成されます。この Jira API トークンは、ステップ 6 で実行する Dynatrace 問題通知構成に必要です。
2. [API トークンを作成] ボタンをクリックします。
3. 表示されたダイアログで、覚えやすく簡単な [ラベル] (Dynatrace チュートリアルなど) をトークンに対して入力して [作成] をクリックします。
4. 重要: この値はチュートリアルの後半で必要になるため、[コピー] ボタンをクリックして API トークンを安全な場所に貼り付けて保存します。保存した API トークンは次のようになります。
![[API トークン] ウィンドウ](https://dam-cdn.atl.orangelogic.com/AssetLink/h55m4e1yk7cjmsy6mtmky4k83v7k62pl.png)
ステップ 6: Dynatrace の問題通知ルールを構成する
Dynatrace と Jira の統合によって、Dynatrace 環境で自動検出されるすべての新しい問題について、課題が自動生成されます。完了すると、以下の例のようになります。

1. Dynatrace 内の左側のメニューで [設定] オプションをクリックします。
![[デプロイ ステータス] の [設定] オプション](https://dam-cdn.atl.orangelogic.com/AssetLink/1t7alb860x7aq5fnv35oavh2frymqt6t.png)
2. 設定サブメニューで、[統合] サブメニューを展開して [Problem notifications (問題の通知)] オプションを選択します。
![左側のナビゲーションの [統合] にある [Problem notifications (問題の通知)]](https://dam-cdn.atl.orangelogic.com/AssetLink/713xweivn22kl54q2ntbvfcotlyejm63.png)
3. [Set up notifications (通知を設定)] を選択します。
4. 利用可能な通知タイプから Jira を選択します。
5. 通知を構成します。
[表示名] – 「Jira チュートリアル」などの値を入力します。
Jira エンドポイント URI – ご利用の Jira アカウントに合わせて、この値を更新します:
https://[YOUR-JIRA-ACCOUNT].atlassian.net/rest/api/2/[ユーザー名] – Atlassian API トークンの作成に使用したユーザー ID。
[API トークン] – Atlassian API トークンの文字列。
[プロジェクト キー] – 新しい課題が作成されて追跡される Jira プロジェクトのキー (プロジェクト名ではない)。上記の例で同じものを使用した場合は「DT」になります。
[要約] – デフォルト値のままにします。
課題の説明 – 既定値のままにします
*** プロのヒント -- 構成ページの「利用可能なプレースホルダー」セクションには、この統合で使用できるプレースホルダーのリストを確認できます。プレースホルダーは、問題に関連する情報に自動で置き換えられます。
6. [Send test notification (テスト通知を送信)] を選択して、Jira 統合が機能していることを確認します。次のように表示されます。

また、Jira ではテスト課題は次のようになります。

7. [保存] ボタンをクリックします。
詳細を見る
Atlassian Marketplace で Dynatrace Problem Integration for Jira プラグインを入手しましょう。
Dynatrace コミュニティで質問 (またはアドバイスの提供) を行いましょう。
Dynatrace + アトラシアンの機能に関する詳細については、こちらをご確認ください。
Dynatrace + アトラシアン (そしてただ頑張るのではなく、効率よく働く方法) に関する詳細は、こちらをご確認ください。
この Dynatrace パフォーマンス クリニックで、アトラシアン、Dynatrace、Keptn の動作をご確認ください。
詳細は、Atlassian Open DevOps の統合に関する説明をご覧ください。
Dynatrace で検出された問題が Jira Software で課題を自動作成する方法については、その他のチュートリアルをご参照ください。