如果函数在执行过程中抛出异常,那么会被函数计算捕获并返回异常信息。
如下示例代码中,我们构造了一个运行时异常:
package example;
import com.ctg.faas.runtime.Context;
import com.ctg.faas.runtime.PojoRequestHandler;
public class HelloApp implements PojoRequestHandler<String, String> {
@Override
public String handleRequest(String input, Context context) {
throw new RuntimeException("something wrong");
}
}
函数被执行后函数计算会返回如下异常信息:
{
"errorCause": "",
"errorType": "java.lang.RuntimeException",
"errorMessage": "something wrong",
"stackTrace": [
"example.HelloApp.handleRequest(HelloApp.java:10)"
]
}
异常信息字段说明:
字段 | 类型 | 说明 |
---|---|---|
errorMessage | String | 异常信息。 |
errorCause | String | 异常原因。 |
errorType | String | 异常类型。 |
stackTrace | List | 异常堆栈。 |