Topik ini menjelaskan cara mencetak log dalam lingkungan runtime Go.
Cetak log
Untuk mencetak log, Anda dapat menggunakan metode context.GetLogger(), metode dalam pustaka log atau fmt, atau metode lain yang menulis log ke stdout atau stderr.
Use the context.GetLogger() method to print logs
Jika Anda menggunakan metode ini untuk mencetak log, log yang dihasilkan mencakup informasi seperti tingkat log, ID permintaan, waktu, nama file, dan nomor baris. Contoh kode:
package main
import (
"context"
"github.com/aliyun/fc-runtime-go-sdk/fc"
"github.com/aliyun/fc-runtime-go-sdk/fccontext"
)
func HandleRequest(ctx context.Context) (string, error) {
fctx, _ := fccontext.FromContext(ctx)
fctx.GetLogger().Debug("ini adalah log Debug")
fctx.GetLogger().Debugf("Hai, %s\n", "ini adalah log Debugf")
fctx.GetLogger().Info("ini adalah log Info")
fctx.GetLogger().Infof("Hai, %s\n", "ini adalah log Infof")
fctx.GetLogger().Warn("ini adalah log Warn")
fctx.GetLogger().Warnf("Hai, %s\n", "ini adalah log Warnf")
fctx.GetLogger().Error("ini adalah log Error")
fctx.GetLogger().Errorf("Hai, %s\n", "ini adalah log Errorf")
return "Halo dunia", nil
}
func main() {
fc.Start(HandleRequest)
}Log berikut dicetak:
FC Invoke Start RequestId: 1e9a87a5-fe0f-4904-a6f4-1d2728514129
2022-04-20T04:28:41.79Z d32c01bc-4397-4f52-a9ca-e374c28f96c1 [DEBUG] main.go:16: ini adalah log Debug
2022-04-20T04:28:41.79Z d32c01bc-4397-4f52-a9ca-e374c28f96c1 [DEBUG] main.go:17: Hai, ini adalah log Debugf
2022-04-20T04:28:41.79Z d32c01bc-4397-4f52-a9ca-e374c28f96c1 [INFO] main.go:19: ini adalah log Info
2022-04-20T04:28:41.79Z d32c01bc-4397-4f52-a9ca-e374c28f96c1 [INFO] main.go:20: Hai, ini adalah log Infof
2022-04-20T04:28:41.79Z d32c01bc-4397-4f52-a9ca-e374c28f96c1 [WARN] main.go:22: ini adalah log Warn
2022-04-20T04:28:41.79Z d32c01bc-4397-4f52-a9ca-e374c28f96c1 [WARN] main.go:23: Hai, ini adalah log Warnf
2022-04-20T04:28:41.791Z d32c01bc-4397-4f52-a9ca-e374c28f96c1 [ERROR] main.go:25: ini adalah log Error
2022-04-20T04:28:41.791Z d32c01bc-4397-4f52-a9ca-e374c28f96c1 [ERROR] main.go:26: Hai, ini adalah log Errorf
FC Invoke End RequestId: 1e9a87a5-fe0f-4904-a6f4-1d2728514129Use the log library to print logs
Log yang dicetak dengan metode ini mencakup informasi tanggal dan waktu. Contoh kode:
package main
import (
"log"
"github.com/aliyun/fc-runtime-go-sdk/fc"
)
func HandleRequest() (string, error) {
log.Println("halo dunia")
return "halo dunia", nil
}
func main() {
fc.Start(HandleRequest)
}Log berikut dicetak:
FC Invoke Start RequestId: a15f8f85-9ed3-47c9-a61c-75678db61831
2022/02/17 04:29:02.228870 halo dunia
FC Invoke End RequestId: a15f8f85-9ed3-47c9-a61c-75678db61831Execution summary
Runtime Go mencatat baris Mulai dan Akhir serta ringkasan eksekusi untuk setiap pemanggilan fungsi.

Tabel berikut menjelaskan parameter dalam ringkasan eksekusi.
| Parameter | Deskripsi |
| ID Permintaan | ID unik dari permintaan pemanggilan. |
| Nilai Periksa Kode | Kode verifikasi dari paket kode yang digunakan untuk memanggil fungsi. |
| Waktu Eksekusi Fungsi | Waktu yang sebenarnya dihabiskan oleh penanganan fungsi untuk berjalan. |
| Waktu Penagihan Fungsi | Jumlah waktu di mana Anda dikenakan biaya untuk memanggil fungsi. |
| Memori Fungsi | Jumlah memori yang dialokasikan untuk fungsi. |
| Memori Digunakan Sebenarnya | Jumlah maksimum memori yang sebenarnya digunakan oleh fungsi. |