Azure で実行される C#/MS Bot Framework で構築されたボットがあります。正常に動作しますが、Azure の HTTP ログには、失敗した HTTP 要求が多数あり、全体の約 20% です。
失敗したリクエストのトレースを有効にすると、ログに次のように表示されました。
URL: /api/メッセージ
現在の Web 要求の実行中に未処理の例外が生成されました。例外の発生元と場所に関する情報は、例外スタック トレースを使用して特定できます。
[InvalidOperationException: 非同期操作がまだ保留中に、非同期モジュールまたはハンドラーが完了しました。]
ログから、スタック トレースを含む詳細を抽出できませんでした (空です)。
ボットはエミュレーターでも正常に動作します。一見失敗したように見える要求にもかかわらず、ユーザーは通常どおりボットと対話できますが、Facebook を介してボットと通信すると、失敗した要求が表示されます。
コードのどの部分がこれを引き起こしているのかさえわかりません。私の他のボットにはこの問題はないようです。
context.Done(this)
ダイアログを終了するために使用している可能性があると思いますが、これを使用するのは通常の方法のようです。
コードのどの部分がこれを引き起こす可能性があるか、またはエラーに関する詳細を抽出する方法についてのポインタやアイデアをいただければ幸いです。ありがとう。