ADVERTISEMENT

【Power Automate】退職者作成フローで困った時の実行履歴から原因を読む方法

【Power Automate】退職者作成フローで困った時の実行履歴から原因を読む方法
🛡️ 超解決

Power Automateで退職者作成フローを運用していると、予期せずフローが失敗することがあります。エラーメッセージを見ても原因がわからず、困った経験はありませんか。本記事では、実行履歴を活用してフローの失敗原因を特定する方法を詳しく解説します。特に退職者作成フローに特化したエラーの読み解き方と対処法をまとめました。実行履歴の見方から具体的なエラーコードの意味まで、実務で役立つ情報を提供します。

【要点】この記事で確認すること

  • 最初に見る場所: Power Automateの実行履歴画面で、失敗したフローのエラーメッセージを確認します。
  • 切り分けの軸: 端末側の権限不足、コネクタ認証の期限切れ、トリガー条件の不整合など、原因を分類して調査します。
  • 注意点: 退職者作成フローは社内の重要なデータを扱うため、管理者権限がないまま設定を変更しないでください。

ADVERTISEMENT

退職者作成フローが失敗する代表的な原因

退職者作成フローは、人事システムやMicrosoft Entra ID(旧Azure AD)と連携してユーザー情報を処理するため、失敗のパターンがいくつかあります。まず、代表的な原因を把握しておくことで、実行履歴の確認が効率的になります。

コネクタの認証情報の期限切れ

Power AutomateがMicrosoft Graph APIと通信する際に使用する認証トークンは、一定期間で期限切れになります。退職者作成フローでは、ユーザー情報の取得や更新にGraph APIを多用するため、認証が切れるとフロー全体が停止します。エラーコードは「Unauthorized」または「AuthenticationFailed」として現れます。対策としては、該当コネクタの編集画面で再サインインを実行します。ただし、テナント管理者の同意が必要な場合もあるため、組織のポリシーを確認してください。

退職予定者が既に削除または無効化されている

退職者作成フローは、対象ユーザーがActive Directoryに存在することを前提にトリガーされます。人事システムからの連携遅延などで、フローが起動する時点でユーザーが既に削除されていると、「NotFound」エラーが発生します。この場合、フローのトリガー条件に「ユーザーが有効であること」を追加するか、フロー内でユーザー存在確認を実装すると防止できます。

SharePointリストの権限不足

退職者作成フローの結果をSharePointリストに書き込む場合、フローを実行するサービスアカウントにリストへの編集権限が必要です。権限が不足していると「Forbidden」エラーが返されます。対策は、該当リストのアクセス許可設定を確認し、適切な権限を付与することです。また、フローが使用するコネクタが委任されたアクセス許可を要求している場合、管理者の承認が必要になることもあります。

式や条件の誤り

退職日を計算する動的な式など、Power Automateの式エディタで構文ミスがあると「ExpressionEvaluationFailed」エラーが発生します。例えば、addDays(utcNow(), 30)と正しく記述すべきところを、addDays(30, utcNow())のように引数を逆にするとエラーになります。対策は、式エディタのプレビュー機能で結果を確認しながら修正することです。

ライセンスやアカウントの制限

一部の操作(特にPremiumコネクタやカスタムコネクタ)には特定のライセンスが必要です。ライセンス不足が原因でフローが失敗することもあります。エラーコードとしては「LicenseError」や「QuotaExceeded」などが該当します。対策は、フロー所有者のPower Automateライセンスを確認し、必要に応じてアップグレードを検討します。

実行履歴を確認するための基本操作手順

失敗したフローの原因を特定するには、実行履歴を詳細に確認する必要があります。以下の手順で基本操作を覚えてください。

Power Automateポータルへのアクセス

  1. WebブラウザでPower Automate(https://make.powerautomate.com)にログインします。
  2. 左側のナビゲーションメニューから「マイフロー」を選択します。
  3. 一覧から対象の退職者作成フローをクリックして詳細画面を開きます。
  4. 上部メニューにある「実行履歴」タブをクリックします。
  5. 実行日時の一覧が表示されるので、失敗した実行(赤い×印)を選択します。
  6. 実行詳細画面で、エラーが発生したアクション(赤い!マーク)をクリックします。
  7. アクションの「出力」セクションに表示される生のエラーメッセージを確認します。

実行履歴画面の見方

実行履歴画面には、各実行の開始時刻、状態(成功/失敗)、実行時間が表示されます。失敗した実行をクリックすると、フロー内の全アクションの状態が一覧で表示されます。成功したアクションは緑色、失敗したアクションは赤色で示されるため、問題が発生した場所をすぐに特定できます。

失敗したアクションの特定

失敗したアクションをクリックすると、そのアクションの「入力」と「出力」の詳細が表示されます。エラーメッセージはほとんどが「出力」タブに含まれています。特に「body」や「message」フィールドに具体的なエラー文言が記録されているため、そこを重点的に確認してください。

エラーメッセージを読み解く

エラーメッセージはJSON形式で出力されることが多く、一見複雑に見えますが、読み解くポイントを押さえれば原因が明確になります。

JSON形式のエラー出力の解析

例えば、以下のようなJSONエラーが出力されたとします。

{
  "error": {
    "code": "Unauthorized",
    "message": "Access token is expired or invalid.",
    "innerError": {
      "date": "2025-03-15T10:30:00Z",
      "request-id": "abc-123"
    }
  }
}

この場合、”code”フィールドが”Unauthorized”なので認証問題、”message”にトークンの期限切れと明示されているため、コネクタの再認証が必要です。”innerError”の”request-id”はMicrosoftサポートに問い合わせる際に役立ちます。

ステータスコードの意味

HTTPステータスコードはエラーの種類を大まかに示します。401は認証エラー、403は権限エラー、404はリソース不存在、500はサーバー内部エラーです。Power Automateの実行履歴では、これらのコードがアクションの出力に含まれていることが多いため、最初にチェックすると効率的です。

コネクタ固有のエラー

各コネクタには独自のエラーメッセージが定義されています。例えば、SharePointコネクタでは「FileNotFound」や「AccessDenied」、Outlookコネクタでは「MailboxNotEnabled」などです。これらのエラーはコネクタのドキュメントを参照すると原因と対策が分かります。退職者作成フローでよく使われるMicrosoft Entra IDコネクタでは「DirectoryObjectNotFound」が頻出します。

状況別の対策と判断基準

エラー内容 考えられる原因 対策
BadGateway (502) サーバーとの通信障害、または一時的なダウン 時間をおいて再実行。それでも続くならMicrosoftサポートへ問い合わせ
Unauthorized (401) コネクタの認証情報が期限切れ、または無効 コネクタの編集画面で再サインイン。管理者の同意が必要な場合はITに依頼
NotFound (404) 対象のユーザー、グループ、またはリソースが存在しない ユーザーがActive Directoryに存在するか確認。フローのトリガー条件を見直し
Forbidden (403) フローを実行するアカウントにアクセス権限がない SharePointリストやGraph APIのアクセス許可設定を確認。必要に応じて権限を追加
ExpressionEvaluationFailed 動的な式の構文間違い、または参照する変数が空 式エディタで構文を確認。変数の初期化や既定値を設定
BadRequest (400) 入力データの形式が不正(日付の書式違いなど) データの書式をAPIの仕様に合わせる。日付はISO 8601形式を推奨
GatewayTimeout (504) 処理がタイムアウト。大量データや長時間のループ フローの並列処理を制限、またはループ内のアクション数を減らす

管理者へ報告すべき情報のまとめ

フローのエラーを管理者やIT部門に報告する際は、以下の情報を整理しておくとスムーズです。

  • 実行ID: 実行履歴画面のURLに含まれています。例:/flows/xxx/runs/yyy の「yyy」部分です。
  • エラーメッセージのスクリーンショット: アクションの「出力」タブに表示されたJSONを含めてください。
  • 発生時刻: 問題が発生した具体的な日時(タイムゾーンを含む)。
  • 再現手順: フローを手動でトリガーしても再現するかどうか。
  • フローのコピー: 可能であればフローをエクスポートしたファイル(.zip)を提供すると、管理者が直接中身を確認できます。

特に実行IDは欠かせません。Microsoftサポートに問い合わせる場合も実行IDが必要になるため、必ず控えておいてください。

よくある質問

Q1: 実行履歴の保存期間は?

標準のPower Automateでは、実行履歴は28日間保存されます。それ以前の履歴は自動的に削除され、確認できません。長期保存が必要な場合は、フローの実行結果を別のログ保存用SharePointリストやAzure Log Analyticsに出力する仕組みを別途作成することを検討してください。

Q2: エラーコードが表示されず「失敗」としか出ません。どうすれば?

アクションの「出力」タブを開いて、JSONの本文を詳細に確認してください。まれにエラーコードが空のまま失敗することもあります。その場合は、フローをデバッグモードで実行するか、フローのコピーを作成して段階的にテストすることで原因を絞り込めます。また、Power Automateの「フローチェッカー」機能を使って事前に問題を検出することも有効です。

Q3: 退職者作成フローが他のスケジュールフローと競合することはありますか?

Power Automateには同時実行数の制限があり、同一テナント内で短期間に大量のフローが実行されると競合が発生する可能性があります。特に退職者作成フローが大量のユーザーを処理する場合、他のスケジュールフローと開始時刻をずらすことを推奨します。また、Power Automateの1時間あたりの実行数制限(標準環境では500回など)も確認し、必要に応じて上限緩和を申請してください。

まとめ

退職者作成フローが失敗したとき、実行履歴は最も頼りになる情報源です。本記事で紹介した手順でエラーメッセージを読み解けば、多くの問題は自己解決できるはずです。認証や権限の問題は管理者との連携が不可欠なため、実行IDとエラー内容を正確に伝えることで迅速な対応が期待できます。日頃からフローの動作を監視し、失敗時の初動を決めておくことで、安定した運用を実現しましょう。


ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。

ADVERTISEMENT