全部产品
Search
文档中心

Function Compute:Spesifikasi

更新时间:Dec 18, 2025

Topik ini menjelaskan header permintaan umum, kode respons, header respons, dan format log yang dapat Anda gunakan untuk membuat lingkungan runtime kustom.

Header permintaan umum Function Compute

Tabel berikut mencantumkan header permintaan umum yang diterima oleh runtime kustom dari Function Compute. Anda mungkin memerlukan header AccessKey sementara untuk mengakses layanan Alibaba Cloud lainnya. Jika Anda sedang melakukan migrasi aplikasi yang sudah ada, Anda dapat mengabaikan informasi ini.

Catatan
  • Baik fungsi event maupun fungsi HTTP mencakup header umum.

  • Function Compute secara otomatis menghasilkan header permintaan umum. Header ini terutama berisi informasi izin dan informasi dasar fungsi.

Header

Deskripsi

x-fc-request-id

ID permintaan.

x-fc-access-key-id

ID AccessKey sementara.

x-fc-access-key-secret

Rahasia AccessKey sementara.

x-fc-security-token

Token keamanan sementara.

x-fc-function-handler

Penanganan fungsi. Jika runtime itu sendiri merupakan fungsi, seperti pada fungsi runtime kustom atau fungsi kontainer kustom, nilai ini tidak memiliki arti. Tetapkan sebagai string acak.

x-fc-function-memory

Memori maksimum yang dapat digunakan oleh fungsi.

x-fc-function-initializer

Penanganan untuk fungsi Initializer. Jika runtime itu sendiri merupakan fungsi, seperti pada fungsi runtime kustom atau fungsi kontainer kustom, nilai ini tidak memiliki arti. Tetapkan sebagai string acak.

x-fc-initialization-timeout

Periode waktu habis untuk eksekusi fungsi Initializer.

x-fc-instance-lifecycle-pre-stop-handler

Penanganan untuk fungsi PreStop. Jika runtime itu sendiri merupakan fungsi, seperti pada fungsi runtime kustom atau fungsi kontainer kustom, nilai ini tidak memiliki arti. Tetapkan sebagai string acak.

x-fc-instance-lifecycle-pre-freeze-handler

Penanganan untuk fungsi PreFreeze. Jika runtime itu sendiri merupakan fungsi, seperti pada fungsi runtime kustom atau fungsi kontainer kustom, nilai ini tidak memiliki arti. Tetapkan sebagai string acak.

x-fc-region

Wilayah tempat fungsi berada.

x-fc-account-id

UID pemilik fungsi.

x-fc-qualifier

Versi layanan atau alias yang ditentukan selama pemanggilan fungsi. Untuk informasi selengkapnya, lihat Gunakan versi dan alias untuk mengimplementasikan rilis bertahap.

x-fc-version-id

Versi layanan yang ditentukan selama pemanggilan fungsi.

x-fc-function-name

Nama fungsi.

x-fc-service-name

Nama layanan tempat fungsi berada.

x-fc-service-logproject

Proyek log yang dikonfigurasi untuk layanan tempat fungsi berada.

x-fc-service-logstore

Penyimpanan log yang dikonfigurasi untuk layanan tempat fungsi berada.

x-fc-control-path

Jenis permintaan fungsi.

Untuk runtime kustom atau kontainer kustom, Anda dapat menentukan apakah pemanggilan fungsi merupakan fungsi HTTP atau fungsi event berdasarkan parameter dalam header. Informasi parameternya adalah sebagai berikut:

  • /invoke: Permintaan ini merupakan pemanggilan fungsi event. /invoke menunjukkan permintaan pemanggilan fungsi Invoke.

  • /http-invoke: Permintaan ini merupakan pemanggilan fungsi HTTP. /http-invoke menunjukkan permintaan pemanggilan fungsi HTTP invoke. Function Compute meneruskan permintaan Anda, termasuk path, body, dan header, bersama dengan header umum ke runtime kustom atau kontainer kustom. Header respons dan body yang dikembalikan oleh runtime kustom atau kontainer kustom kemudian dikembalikan ke klien.

  • /initialize: /initialize menunjukkan permintaan pemanggilan fungsi Initialize yang secara otomatis diprakarsai oleh Function Compute saat lingkungan eksekusi dibuat pertama kali. Fungsi ini berhasil dipanggil hanya sekali selama siklus hidup kontainer, mirip dengan konstruktor kelas.

Kode respons dan header respons Function Compute

Runtime kustom pada dasarnya adalah server HTTP yang Anda implementasikan. Oleh karena itu, setiap pemanggilan fungsi merupakan permintaan HTTP, dan setiap respons memiliki kode respons serta header respons.

  • Kode respons StatusCode

    • 200: Status sukses.

    • 404: Status gagal.

  • Header respons x-fc-status

    • 200: Status sukses.

    • 404: Status gagal.

Gunakan header respons x-fc-status untuk melaporkan kepada Function Compute apakah eksekusi fungsi lokal berhasil.

  • Jika x-fc-status tidak diatur, Function Compute secara default mengasumsikan bahwa pemanggilan berhasil. Namun, fungsi Anda mungkin mengalami pengecualian yang tidak dilaporkan ke Function Compute. Dalam kasus ini, Function Compute tetap menganggap eksekusi berhasil. Hal ini mungkin tidak memengaruhi logika bisnis Anda, tetapi akan memengaruhi pemantauan dan observabilitas. Gambar berikut menunjukkan contohnya:image8hanshujisuanruntime

  • Jika x-fc-status diatur, dan fungsi Anda mengalami pengecualian, Anda dapat menggunakan header respons x-fc-status untuk melaporkan kegagalan eksekusi kepada Function Compute. Anda juga dapat mencetak informasi stack error ke log. Gambar berikut menunjukkan contohnya:image9runtimefc

Catatan

Atur baik StatusCode maupun x-fc-status dalam respons HTTP.

Format log fungsi

Anda dapat mengaktifkan fitur pencatatan log saat membuat layanan. Semua log yang dicetak ke standard output (stdout) dalam runtime kustom akan dikumpulkan secara otomatis di Simple Log Service yang Anda tentukan. Untuk informasi selengkapnya, lihat Konfigurasi log.

Saat Function Compute memanggil fungsi dalam lingkungan runtime selain runtime kustom dan kontainer kustom, jika header permintaan berisi x-fc-log-type: Tail, header respons x-fc-log-result yang dikembalikan berisi log yang dicetak selama eksekusi fungsi. Ukuran log dibatasi hingga 4 KB. Anda dapat melihat log ini dalam hasil eksekusi fungsi di Function Compute console. Jika Anda ingin melihat log runtime dari runtime kustom dalam hasil eksekusi di konsol, Anda harus mencatat log awal dan akhir permintaan dalam kode Anda.

Penting

Jika Anda memanggil fungsi secara anonim menggunakan pemicu HTTP, termasuk x-fc-log-type: Tail dalam header permintaan dapat menyebabkan kebocoran informasi sensitif. Untuk mencegah hal ini, aktifkan autentikasi. Untuk informasi selengkapnya, lihat Autentikasi.

Konten log

Wajib

Kode

Mulai runtime

Tidak

Catatan

Konten ini merupakan penanda cold start fungsi.

FunctionCompute ${runtime} runtime inited.

Catatan

${runtime} menentukan jenis bahasa kustom. Kami menyarankan agar Anda menghindari penggunaan nama bahasa resmi Function Compute, seperti Node.js, Python, atau PHP.

Log untuk awal Invoke

Ya

FC Invoke Start RequestId: ${RequestId}

Log untuk akhir Invoke

Ya

FC Invoke End RequestId: ${RequestId}

Log untuk awal Initialize

Tidak

Catatan

Wajib untuk fungsi Initializer.

FC Initialize Start RequestId: ${RequestId}

Log akhir inisialisasi

Tidak

Catatan

Wajib untuk fungsi Initializer.

FC Initialize End RequestId: ${RequestId}

Selain informasi di atas, sertakan ID permintaan dalam log Anda untuk membantu mendiagnosis masalah. Format log yang direkomendasikan adalah $utcdatetime(yyyy-MM-ddTHH:mm:ss.fff) $requestId [$Level] $message.

Catatan

Antarmuka untuk menentukan tingkat log bervariasi tergantung bahasa. Anda harus mengatur tingkat log berdasarkan lingkungan runtime Anda. Untuk informasi selengkapnya, lihat Informasi dasar.

Referensi

Untuk informasi selengkapnya tentang lingkungan runtime kustom, perintah startup dan konfigurasi parameter untuk berbagai bahasa, serta konfigurasi fungsi hook siklus hidup instans, lihat topik-topik berikut: