Topik ini menjelaskan cara menangani kesalahan dalam lingkungan runtime Java, termasuk tipe kesalahan dan informasi pengecualian.
Tipe kesalahan
- Jika terjadi kesalahan saat suatu fungsi dijalankan, Function Compute akan menangkap kesalahan tersebut dan mengembalikan pesan kesalahan.
Contoh kode:
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"); } }Saat fungsi dipanggil, respons berikut dikembalikan:{ "errorMessage" : "oops", "errorType" : "java.io.IOException", "errorCause" : "oops", "stackTrace" : [ "example.HelloFC.handleRequest(HelloFC.java:15)" ] } - Jika fungsi keluar secara proaktif selama proses berjalan, sistem akan mengembalikan pesan kesalahan umum.
Contoh kode:
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); } }Saat fungsi dipanggil, respons berikut dikembalikan:{ errorMessage: 'Proses keluar secara tak terduga sebelum menyelesaikan permintaan (Durasi: 43ms, maxMemoryUsage: 65MB)' }
Informasi kesalahan
Tabel berikut menjelaskan bidang-bidang dalam informasi kesalahan.
| Bidang | Kategori | Deskripsi |
| errorMessage | String | Pesan kesalahan. |
| errorType | String | Tipe kesalahan. |
| stackTrace | Daftar | Tumpukan kesalahan. |
Untuk informasi lebih lanjut tentang tipe kesalahan, lihat Penanganan Kesalahan.