向井です。
本記事ではPower Automate のエラーの監視・通知機能と、フロー内でエラーハンドリングする方法をご紹介します。
#1. エラーの監視
Power Platform 管理センターから Power Automateの監視が可能です。
その中でどのフローでいつエラーが発生したか確認できます。
##確認の手順
###①Power Platform管理センターにアクセスする
Power Automateの画面からだと下の画像のように歯車マーク>管理センターでアクセス可能です。
###②該当の環境を選択する
###③Power Automate の分析画面に移動する
下の画像のように、分析>Power Automate をクリックします。
###④エラーの分析結果を表示する
③の時点では下の画像のように、Power Automate をいつどのくらい実行し、結果はどうだったのかが表示されています。
下の画像のように過去28日間のエラーが表示されます。
「フィルターの変更」から表示させる期間を変更することもできます。
また、「デスクトップフロー」をクリックすることで、Power Automate Desktop のエラーも確認することができます。
※ロールによって表示できるレポートが異なります。
環境管理者 ― 管理者がアクセスできる環境のレポートを表示できます。
Power Platform 管理者 – すべての環境のレポートを表示できます。
Dynamics 365 管理者 – すべての環境のレポートを表示できます。
Dynamics 365 グローバル管理者 ― すべての環境のレポートを表示できます。
#2. エラーの監視(デフォルト)
フローの所有者には週1回メールでエラーの通知が届きます。
フロー名をクリックすると、そのフローの実行結果のページが開きます。
この通知はフローの所有者宛に週1回送られます。
送り先や頻度を変更することはできません。
フロー所有者以外に、エラーが発生した都度通知を送るには次項の方法を試してください。
#3. エラーハンドリング
Power Automate では、アクションに実行条件を設定することが可能です。
フローのアクションの右にある…から「実行条件の構成」をクリックします。
初期設定では「に成功しました」にチェックが入っています。
ここを**「に失敗しました」にチェックを変更することで、前のアクションが失敗したときにこのアクションを実行するように設定できます。**
下の画像では、ひとつ前のアクションである「IDで行を取得する」が成功した場合は左のアクションを、失敗した場合は右のアクションを実行するように設定しています。
ちなみに、「がスキップされます」は2つ前のアクションが失敗したときに、1つ前のアクション(2つ前のアクションが成功したときのみに実行される)がスキップされる設定です。
#4. Try, Catch, Finally テンプレート
前項の仕組みを利用したTry, Catch, Finallyテンプレートも用意されています。
このテンプレートは「スコープ」という複数のアクションを1つにまとめる仕組みと前項で紹介した実行条件の構成を合わせることで、実際に実行したいアクションと、エラー時に実行したいアクションをわかりやすく設定できるテンプレートとなっています。
右のアクションにフローが失敗したときに通知をできるようなアクション(Teamsの投稿、メールの送信など)を設定することで、フローが失敗するたびに任意の人に通知を送ることができます。
各スコープの中にはそれぞれ複数のアクションを入れることができます。
まず、「Try」に「実行したいアクション」を入れます。
次に「Catch」に「Tryに入れたアクションが失敗したときに実行してほしいアクション」を入れます。
最後に「Finally」に「Tryにいれたアクションが成功、失敗にかかわらずに実行してほしいアクション」を入れます。