Pencatatan log - AWS SDK untuk Go v2

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Pencatatan log

Ini AWS SDK untuk Go memiliki fasilitas pencatatan yang tersedia yang memungkinkan aplikasi Anda mengaktifkan informasi debugging untuk debugging dan mendiagnosis masalah atau kegagalan permintaan. Antarmuka Logger dan ClientLogModemerupakan komponen utama yang tersedia bagi Anda untuk menentukan bagaimana dan apa yang harus dicatat oleh klien.

Pencatat

Saat membuat Config LoadDefaultConfigmenggunakan Logger default dikonfigurasi untuk mengirim pesan log ke kesalahan standar proses (stderr). Logger khusus yang memenuhi antarmuka Logger dapat diteruskan sebagai argumen LoadDefaultConfig dengan membungkusnya dengan konfigurasi. WithLogger.

Misalnya, untuk mengkonfigurasi klien kami untuk menggunakanapplicationLogger:

cfg, err := config.LoadDefaultConfig(context.TODO(), config.WithLogger(applicationLogger))

Sekarang klien yang dikonfigurasi menggunakan yang dibangun aws.Config akan mengirim pesan log keapplicationLogger.

Logger Sadar Konteks

Implementasi Logger dapat mengimplementasikan ContextLoggerantarmuka opsional. Logger yang mengimplementasikan antarmuka ini akan memiliki WithContext metode mereka dipanggil dengan konteks saat ini. Ini memungkinkan implementasi logging Anda mengembalikan yang baru Logger yang dapat menulis metadata logging tambahan berdasarkan nilai yang ada dalam konteks.

ClientLogMode

Secara default, klien layanan tidak menghasilkan pesan log. Untuk mengonfigurasi klien untuk mengirim pesan log untuk tujuan debugging, gunakan ClientLogModeanggota diConfig. ClientLogModedapat diatur untuk mengaktifkan pesan debugging untuk:

  • Tanda Tangan Versi 4 (SiGv4) Penandatanganan

  • Minta Coba Ulang

  • Permintaan HTTP

  • Tanggapan HTTP

Misalnya, untuk mengaktifkan pencatatan permintaan HTTP dan percobaan ulang:

cfg, err := config.LoadDefaultConfig(context.TODO(), config.WithClientLogMode(aws.LogRetries | aws.LogRequest))

Lihat ClientLogModeuntuk berbagai mode log klien yang tersedia.