7
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Dataverse テーブルの取得で 500 エラーに対処してみた

Posted at

Power Automate クラウドフローで Dataverse テーブルからデータを一覧取得しようとした際 「Internal Server Error」(500 エラー)が突然発生して、えっー!? ってなったので、調査した結果と対策を備忘録的にネタにしていきます。

なお、対策案は「当方が試してうまくいった」内容になります。皆さんが同様の状況に陥った際、同じ対策で改善するとは断言できませんが・・・「よくわからないエラーになったら試してみるコト」ぐらいで記憶の片隅に置いといていただけると、いつか(自分を含む)誰かが救われるかもしれない、と思って続けます。

発生した事象、あるいは遭遇したエラー

Power Platform 環境へ Dataverse を作成すると、自動で準備されるマネージドレイヤーのテーブルから、クラウドフローでデータを取得しようとしたんです。アクションを少しずつ追加しながら、動作確認しながら作り進めていった途中で、以下のエラーが発生しました。

01.jpg

InternalServerError. Encountered internal server error. The tracking Id is 'xxxxxx'.

なお、フローの左上に表示されたエラーは「Network Error」。

クラウドフローでネットワークエラー・・・って、もしかしてインシデント発生!?と焦って管理センターの正常性レポート等を確認しましたがオールグリーンでした。

詳細は割愛しますが、アクションが 3~4個の時は正常に動作していたのです。その後、後続の処理を追加した後に実行したら突然エラーとなったので「なんでやねん!」ってなりました汗。

エラーが発生したアクション

Microsoft Dataverse コネクターの「選択された環境から行を一覧にする」です。

環境指定して、行のフィルターに簡単な OData クエリ書いてあるだけなんですけどねぇ。

Copilot さんに質問してみた

検索しても「コレかな?」という内容に出会わなかったので、Copilot さんに聞いてみました。

02.png

ふーむ・・・ピンとくる内容が無いですね。途中まで意図した動作をしていたのに、突然エラーになったので「ひと晩寝かせてみるか」と思い、その日はこれ以上の調査をせずに終了しました。

ひと晩寝かせてみた

翌日、再度試してみましたが、同じアクションで 500 エラーになってしまいます。ブラウザーのキャッシュを削除したり、フローをエクスポートしてインポートしなおしてみたり、色々試してみましたが、エラーになる環境では全く改善される気配がありません。テスト実行だけでなく、1回保存して、一覧画面に戻ってから実行しても状況は変わらずエラー。

なんでやねん!

と思いつつ・・・。
「同じアクションで必ずエラーになる」というコトは、そのアクションが怪しい、という仮説がたちますよね。なので、該当アクションで何かやれないか考えてみたのです。

うまく行った対策案

既に[行のフィルター]を仕込んだ状態だったので、取得する行数をこれ以上減らすのは避けたい、と判断。

そこで、取得する列数を減らしてみようと思いました。

該当アクションの[列を選択する]にパラメーターを指定してみます。

03.png

さて、テストしてみましょう!

04.png

いったぁ!!動いたぁ!!!
おめでとうございます、ありがとうございます。

関連するかもしれない情報

今回、話題にしているアクションで、Internal Server Error(500 エラー)とは異なり BadRequest エラーになるパターンもあります。

05.png

BadRequest. Http request failed as there is an error: 'Cannot write more bytes to the buffer than the configured maximum buffer size: 104857600.'.

「単一のトリガーまたはアクション - 入力または出力の最大サイズ」が 104,857,600 バイト(105 MB) になっており、それを超過するやり取りがエラーになる、というコトですね。

このエラーが発生した際も、応答のやり取り総量をチューニングする必要があります。

結び

冒頭にも明記してありますが、同様のエラーが発生した際、同じ対策方法で必ず改善するとは断言できません。ただ、1回試してみても良い操作だと思いますので、頭の片隅にあって、いつか誰かのお役に少しでも立てれば幸いです。

それでは、皆さま。素晴らしい Power Platform Life を!

7
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?