演習 - パイプラインの正常性を監視する
この演習では、Azure Pipelines に用意されている分析機能を確認します。
Irwin は Tailspin チームに、どうすればリリースを迅速化できるか尋ねました。 自動リリース パイプラインを構築することは、迅速で確実なリリースを行うための大きな一歩です。 より頻繁で迅速なリリースを行う場合は、リリースの正常性と履歴を把握しておくことが重要です。 正常性の傾向を定期的に調べることは、重大になる前に潜在的な問題を診断するのに役立ちます。
パイプラインの分析の一部を見ていく前に、Tailspin チームの朝の会議を聞いてみましょう。
パイプラインの正常性を追跡するにはどうすればよいか
翌朝のことです。 チーム ミーティングで、Andy と Mara は、設定したビルドとリリースのパイプラインのデモを終えました。
Amita: すごいですね! ビルド パイプラインはすばらしいスタートになりましたが、ビルド成果物をテストするには、ラボに手動でインストールする必要がまだありました。 これらのリリースを定期的なスケジュールでテスト環境に取り込めれば、新しい機能をはるかに迅速に QA に通すことができます。
Mara: そのとおりです。 また、リリース パイプラインをいつでも拡張してステージを追加することができます。 目標は、完全なデプロイ ワークフローを作成することです。
Tim: ステージング環境もよいと思います。 新しい機能を最終承認のために経営陣に提示する前に、さらにストレス テストを行うことができます。
チームは、この新しいパイプラインで何ができるかに胸を躍らせます。 全員が同時に話し始めます。
Andy: 私もワクワクしています。 しかし、一歩一歩に集中していきましょう。 確かに、これらの変更をすべて行うことはできると思いますが、これは概念実証にすぎません。 その拡張には徐々に取り組みましょう。
Amita: では、リリース パイプラインの正常性を追跡するにはどうすればよいですか?
Andy: ビルドの状態を監視するために作成したダッシュボードを覚えていますか? 同じ種類のシステムを我々のリリース用にセットアップできます。
Tim: Irwin は気に入るでしょう。
Andy: リリース ワークフローが完成するまで、リリース ダッシュボードのビルドは控えておきましょう。 今は、Azure Pipelines に用意されているいくつかの組み込み分析を見てみましょう。
チームは、Andy のラップトップの周りに集まります。
パイプライン分析で提供される情報
すべてのパイプラインでは、メトリック、傾向、および分析情報を含むレポートが提供されます。 これらのレポートは、パイプラインの効率を向上させるのに役立ちます。
レポートには次のものが含まれます。
- パイプラインの全体的な成功率。
- パイプラインのテストでの成功率
- 完了に最も時間がかかる (ビルド タスクを含む) パイプライン実行の平均時間。
パイプライン エラー、テスト エラー、パイプライン期間を示すサンプル レポートを次に示します。
結果をフィルター処理して、特定の期間または GitHub ブランチのアクティビティ全体に焦点を当てることができます。 また、Azure DevOps では、この情報が OData フィードとしても提供されます。 このフィードを使用して、Power BI、Microsoft Teams、Slack などのシステムにレポートや通知を発行できます。 分析フィードの詳細については、このモジュールの最後で説明します。
パイプラインの分析を調べる
Azure DevOps で [パイプライン] を選択し、使用するパイプラインを選択します。
[Analytics] タブを選択します。
パイプラインの実行の成功率と平均時間に確認してください。
[パイプラインの成功率] で [完全なレポートの表示] を選択して、詳細レポートを表示します。
Amita: 必要な情報はこれですが、まだデータが少ないようです。
Andy: そのとおりです。 より多くの実行を重ねるにつれて、さらに多くのデータが収集されます。 このデータを使用して分析情報を取得し、より効率的にする方法を学習します。
Mara:npm install
タスクの完了に最も時間がかかることがわかります。 おそらく、npm パッケージをキャッシュすることで、実行速度を向上させることができます。
Andy: それは素晴らしいアイデアです! パイプライン実行が増えるにつれて、これをさらに調査できます。