Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Aktifkan pencatatan AWS SDK for Rust kode

Mode fokus
Aktifkan pencatatan AWS SDK for Rust kode - AWS SDK for Rust

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

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

AWS SDK for Rust Menggunakan kerangka penelusuran untuk logging.

  1. Dalam prompt perintah untuk direktori proyek Anda, tambahkan peti tracing-subscriber sebagai dependensi:

    $ cargo add tracing-subscriber --features tracing-subscriber/env-filter

    Ini menambahkan peti ke [dependencies] bagian Cargo.toml file Anda.

  2. Inisialisasi pelanggan. Biasanya ini dilakukan di awal main fungsi sebelum memanggil SDK apa pun untuk operasi Rust:

    use aws_config::BehaviorVersion; type BoxError = Box<dyn Error + Send + Sync>; #[tokio::main] async fn main() -> Result<(), BoxError> { tracing_subscriber::fmt::init(); // Initialize the subscriber. let config = aws_config::defaults(BehaviorVersion::latest()) .load() .await; let s3 = aws_sdk_s3::Client::new(&config); let _resp = s3.list_buckets() .send() .await?; Ok(()) }
  3. Aktifkan logging menggunakan variabel RUST_LOG lingkungan. Untuk mengaktifkan tampilan informasi logging, dalam prompt perintah, atur variabel RUST_LOG lingkungan ke tingkat yang ingin Anda log. Contoh berikut menetapkan logging ke debug level:

    Linux/macOS
    $ RUST_LOG=debug
    Windows

    Jika Anda menggunakan VSCode, jendela terminal sering default ke. PowerShell Verifikasi jenis prompt yang Anda gunakan.

    C:\> set RUST_LOG=debug
    PowerShell
    PS C:\> $ENV:RUST_LOG="debug"
    $ RUST_LOG=debug
  4. Jalankan program:

    $ cargo run

    Anda akan melihat output tambahan di jendela konsol atau terminal.

Untuk informasi selengkapnya, lihat memfilter peristiwa dengan variabel lingkungan dari tracing-subscriber dokumentasi.

Menafsirkan output log

Setelah Anda mengaktifkan logging dengan mengikuti langkah-langkah di bagian sebelumnya, informasi log tambahan akan dicetak ke standar secara default.

Jika Anda menggunakan format keluaran log default (disebut “penuh” oleh modul penelusuran), informasi yang Anda lihat di output log terlihat mirip dengan ini:

2024-06-25T16:10:12.367482Z DEBUG invoke{service=s3 operation=ListBuckets sdk_invocation_id=3434933}:try_op:try_attempt:lazy_load_identity: aws_smithy_runtime::client::identity::cache::lazy: identity cache miss occurred; added new identity (took 480.892ms) new_expiration=2024-06-25T23:07:59Z valid_for=25066.632521s partition=IdentityCachePartition(7) 2024-06-25T16:10:12.367602Z DEBUG invoke{service=s3 operation=ListBuckets sdk_invocation_id=3434933}:try_op:try_attempt: aws_smithy_runtime::client::identity::cache::lazy: loaded identity 2024-06-25T16:10:12.367643Z TRACE invoke{service=s3 operation=ListBuckets sdk_invocation_id=3434933}:try_op:try_attempt: aws_smithy_runtime::client::orchestrator::auth: resolved identity identity=Identity { data: Credentials {... }, expiration: Some(SystemTime { tv_sec: 1719356879, tv_nsec: 0 }) } 2024-06-25T16:10:12.367695Z TRACE invoke{service=s3 operation=ListBuckets sdk_invocation_id=3434933}:try_op:try_attempt: aws_smithy_runtime::client::orchestrator::auth: signing request

Setiap entri mencakup yang berikut:

  • Stempel waktu entri log.

  • Tingkat log entri. Ini adalah kata sepertiINFO,DEBUG, atauTRACE.

  • Kumpulan bentang bersarang dari mana entri log dihasilkan, dipisahkan oleh titik dua (“:”). Ini membantu Anda mengidentifikasi sumber entri log.

  • Jalur modul Rust yang berisi kode yang menghasilkan entri log.

  • Teks pesan log.

Format output standar modul tracing menggunakan kode escape ANSI untuk mewarnai output. Ingatlah urutan pelarian ini saat memfilter atau mencari output.

catatan

sdk_invocation_idYang muncul dalam kumpulan rentang bersarang adalah ID unik yang dihasilkan sisi klien oleh SDK untuk membantu mengkorelasikan pesan log. Ini tidak terkait dengan ID permintaan yang ditemukan dalam respons dari file Layanan AWS.

Sempurnakan level logging Anda

Jika Anda menggunakan peti yang mendukung pemfilteran lingkungan, sepertitracing_subscriber, Anda dapat mengontrol verbositas log berdasarkan modul.

Anda dapat mengaktifkan level logging yang sama untuk setiap modul. Berikut ini menetapkan level logging trace untuk setiap modul:

$ RUST_LOG=trace cargo run

Anda dapat mengaktifkan pencatatan tingkat penelusuran untuk modul tertentu. Dalam contoh berikut, hanya log yang berasal dari yang aws_smithy_runtime akan masuk pada trace level.

$ RUST_LOG=aws_smithy_runtime=trace

Anda dapat menentukan tingkat log yang berbeda untuk beberapa modul dengan memisahkannya dengan koma. Contoh berikut menyetel aws_config modul ke trace level logging, dan aws_smithy_runtime modul ke debug level logging.

$ RUST_LOG=aws_config=trace,aws_smithy_runtime=debug cargo run

Tabel berikut menjelaskan beberapa modul yang dapat Anda gunakan untuk memfilter pesan log:

Awalan Deskripsi

aws_smithy_runtime

Permintaan dan respons pencatatan kawat

aws_config

Pemuatan kredensil

aws_sigv4

Permintaan penandatanganan dan permintaan kanonik

Salah satu cara untuk mengetahui modul mana yang perlu Anda sertakan dalam output log Anda adalah dengan terlebih dahulu mencatat semuanya, lalu temukan nama peti di output log untuk informasi yang Anda butuhkan. Kemudian Anda dapat mengatur variabel lingkungan yang sesuai dan menjalankan program Anda lagi.

Di halaman ini

PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.