すべてのプロダクト
Search
ドキュメントセンター

Function Compute:エラー処理

最終更新日:Sep 02, 2024

このトピックでは、エラーの種類や例外情報など、Javaランタイム環境でエラーを処理する方法について説明します。

エラータイプ

  • 関数の実行中にエラーが発生した場合、function Computeはエラーをキャプチャしてエラーメッセージを返します。

    サンプルコード:

    package example;
    
    import com.aliyun.fc.runtime.Context;
    import com.aliyun.fc.runtime.StreamRequestHandler;
    
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    
    public class HelloFC implements StreamRequestHandler {
    
        @Override
        public void handleRequest(InputStream inputStream, OutputStream outputStream, Context context) throws IOException {
            throw new IOException("oops");
        }
    } 

    関数が呼び出されると、次の応答が返されます:

    {
      "errorMessage" : "oops",
      "errorType" : "java.io.IOException",
      "errorCause" : "oops",
      "stackTrace" : [ "example.HelloFC.handleRequest(HelloFC.java:15)" ]
    }
  • 関数が実行中にプロアクティブに終了すると、システムは一般的なエラーメッセージを返します。

    サンプルコード:

    package example;
    
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    
    import com.aliyun.fc.runtime.Context;
    import com.aliyun.fc.runtime.StreamRequestHandler;
    
    public class App implements StreamRequestHandler {
    
        @Override
        public void handleRequest(InputStream inputStream, OutputStream outputStream, Context context) throws IOException {
            System.exit(-1);
        }
    }

    関数が呼び出されると、次の応答が返されます:

    {
      errorMessage: 'Process exited unexpectedly before completing request (duration: 43ms, maxMemoryUsage: 65MB)'
    }

エラー情報

エラー情報のフィールドを次の表に示します。

項目

カテゴリ

説明

errorMessage

String

エラーメッセージを示します。

errorType

String

エラータイプ。

stackTrace

List

エラースタック。

その他のエラータイプについては、「エラー処理」をご参照ください。