この記事の内容
Pipelines実行した際にjobの実行ログをDevOpsポータルのPipelinesの画面から確認ができますが、デフォルトではエラー発生時に詳細なログは表示されません。
設定を追加することでデバッグログを表示することができるようになるため、この記事ではパイプラインのログ設定方法の手順を掲載します。
MS公式のドキュメントで「パイプライン実行時のトラブルシューティング」というページにも記載はありますが少しわかりづらかったので実際の画面キャプチャで手順を記載します。
MS公式:Troubleshoot pipeline runs
パイプライン詳細ログの設定
Pipelinesの詳細ログ設定には2つの方法があります。
- パイプライン実行時に「システム診断を有効にする」を選択し1回の実行に対して詳細ログを出力する
- 標準で詳細ログを毎回出力する
1,パイプライン実行時に「システム診断を有効にする」を選択し1回の実行に対して詳細ログを出力する
パイプライン実行の確認ダイアログが表示されますが、デフォルトでは詳細ログを出力するための[Enable system diagnostics]にチェックが入っていないため注意です。
チェックを入れて実行すると、今回の実行に対してのみ詳細ログが出力されます。
2,標準で詳細ログを毎回出力する
パイプライン実行画面の右側三点リーダーを選択し、パイプラインのオプション設定を表示します。
New variableでsystem.debug変数を追加します。
詳細ログの確認
上記2つのうちどちらかの設定が完了した状態でPipelinesを実行し、実際に詳細ログが出力されている画面を確認してみます。
※掲載しているキャプチャ内のログやエラー内容はPipelines実行jobの内容によって違います。本記事では詳細ログの出力有無比較のために例として掲載しています。
パイプライン実行jobのログ画面を確認します。
以下は詳細ログ出力を設定していない画面です。この状態ではまだ詳細ログは出力されていません。
詳細ログ出力設定をしたあとのパイプライン実行jobのログ画面です。
182行目から187行目にかけて紫色で##[debug]と出力されているものが今回設定した詳細ログの出力になります。
このような形でPipeline実行時にエラーが発生した場合に詳細な調査を実行するうえで必要な詳細ログを取得することが可能となります。
デフォルトでは出力されるように設定はされていないため、適宜設定が必要となります。
エージェント診断ログの確認
今回はAzure DevOps上でPipelinesの実行エラーが発生した際にAzure DevOpsポータル上から確認ができるPipelinesの詳細ログについて簡単にまとめましたが、実際にPipelinesのビルドやリリースを実行しているエージェントの実行時の動作ログを確認することもできます。
エージェント側で何かエラーが発生している場合にはエージェント診断ログを確認することが必要になってきますので、次回はエージェント診断ログの確認方法についてまとめてみたいと思います。