2017-03-14 5 views
1

私は多くのことを試しましたが、AzFnに呼び出しを理解させる唯一の方法は失敗しました。例外をスローして処理しないことです。したがって、私がHttpResponseExceptionを返すと、AzFnは呼び出しを成功と見なします。それは間違っていると感じます。Azure関数で呼び出しを手動で失敗としてマークする方法はありますか?

catch (Exception ex) 
    { 
     logger.Error($"{nameof(ex)}: {ex.Message}", ex); 
     response = req.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message, ex); 

    } 

これは、失敗としてマークされた呼び出しを生成するはずですが、そうではありません。

答えて

6

関数からスローされた例外は、その関数を失敗とマークします。上のコードでは、例外を飲み込んでいるので、成功したと考えます。代わりにが例外を再投入すると、その機能は失敗とマークされます。そのような場合には自動的に500人が返却されます。

返されたHttpStatusCodeは、関数が正常に実行されたかどうかを判断するために返されたものではありません。あなたの関数が応答を返すことができれば、私たちの立場からは成功です。

+0

ありがとうございました。理にかなっている - これに関する文書では、具体的なやベストプラクティスを見つけることができなかった。 – imbageek

関連する問題