.NET Core function error handling
If a handler reports a .NET Core function runtime or loading error, the runtime environment automatically intercepts the error and responds by returning a JSON document with the error type info. For more information about the JSON document format, see Calling a function.
The error info is also written to the execution log. You can view the log via the Yandex Cloud CLI or the management console
Examples of error handling
Case 1: User code goes outside the array boundaries, resulting in IndexOutOfRangeException
. The runtime environment intercepts the exception and generates a JSON document stating the error message (errorMessage
field), error type (errorType
field), and stack tracestackTrace
field).
Function code:
public class Handler {
public int FunctionHandler(byte[] input) {
readonly var array = new int[]{1, 2, 3, 4, 5};
// at this point, the function throws an IndexOutOfRangeException
return array[15];
}
}
JSON document returned:
{
"errorMessage": "Index was outside the bounds of the array",
"errorType": "System.IndexOutOfRangeException",
"stackTrace": [
...
]
}
Case 2: User code indicates an error by throwing
Function code:
public class Handler {
public int FunctionHandler(byte[] input) {
throw new SystemException("Some error message");
}
}
JSON document returned:
{
"errorMessage": "Some error message",
"errorType": "System.SystemException",
"stackTrace": [
...
]
}