Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

AWS SDK for Rust コードのログ記録を有効にする

フォーカスモード
AWS SDK for Rust コードのログ記録を有効にする - AWS SDK for Rust

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

は、ログ記録に トレースフレームワーク AWS SDK for Rust を使用します。

  1. プロジェクトディレクトリのコマンドプロンプトで、トレースサブスクライブクレートを依存関係として追加します。

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

    これにより、 Cargo.toml ファイルの [dependencies]セクションに木箱が追加されます。

  2. サブスクライバーを初期化します。通常、これは SDK for Rust オペレーションを呼び出す前にmain、関数の早い段階で行われます。

    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. RUST_LOG 環境変数を使用してログ記録を有効にします。ログ情報の表示を有効にするには、コマンドプロンプトで、 RUST_LOG環境変数をログインするレベルに設定します。次の例では、ログ記録を debugレベルに設定します。

    Linux/macOS
    $ RUST_LOG=debug
    Windows

    VSCode を使用している場合、ターミナルウィンドウのデフォルトは PowerShell です。使用しているプロンプトのタイプを確認します。

    C:\> set RUST_LOG=debug
    PowerShell
    PS C:\> $ENV:RUST_LOG="debug"
    $ RUST_LOG=debug
  4. プログラムを実行します。

    $ cargo run

    コンソールまたはターミナルウィンドウに追加の出力が表示されます。

詳細については、 tracing-subscriberドキュメントの「環境変数を使用したイベントのフィルタリング」を参照してください。

ログ出力の解釈

前のセクションの手順に従ってログ記録を有効にすると、デフォルトで追加のログ情報が標準出力に出力されます。

デフォルトのログ出力形式 (トレースモジュールでは「フル」と呼ばれます) を使用している場合、ログ出力に表示される情報は次のようになります。

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

各エントリには以下が含まれます。

  • ログエントリのタイムスタンプ。

  • エントリのログレベル。これは、INFO、、 DEBUGなどの単語ですTRACE

  • ログエントリが生成されたネストされたスパンのセット。コロン ("") で区切られます。これにより、ログエントリのソースを識別できます。

  • ログエントリを生成したコードを含む Rust モジュールパス。

  • ログメッセージテキスト。

トレースモジュールの標準出力形式は、ANSI エスケープコードを使用して出力を色分けします。出力をフィルタリングまたは検索するときは、これらのエスケープシーケンスに注意してください。

注記

ネストされたスパンのセット内sdk_invocation_idに表示される は、ログメッセージを関連付けるために SDK によって生成された一意の ID です。これは、 からのレスポンスで見つかったリクエスト ID とは関係ありません AWS のサービス。

ログ記録レベルを微調整する

などの環境フィルタリングをサポートする木箱を使用する場合はtracing_subscriber、モジュールごとにログの詳細度を制御できます。

すべてのモジュールで同じログ記録レベルを有効にできます。以下は、すべてのモジュールのログ記録レベルを trace に設定します。

$ RUST_LOG=trace cargo run

特定のモジュールのトレースレベルのログ記録を有効にできます。次の例では、 からのログのみが trace レベルでaws_smithy_runtime提供されます。

$ RUST_LOG=aws_smithy_runtime=trace

複数のモジュールに異なるログレベルを指定するには、カンマで区切ります。次の例では、 aws_configモジュールをtraceレベルロギングに設定し、 aws_smithy_runtimeモジュールをdebugレベルロギングに設定します。

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

次の表は、ログメッセージのフィルタリングに使用できるモジュールの一部を示しています。

Prefix 説明

aws_smithy_runtime

リクエストとレスポンスのワイヤログ記録

aws_config

認証情報のロード

aws_sigv4

リクエスト署名と正規リクエスト

ログ出力に含める必要があるモジュールを特定する 1 つの方法は、まずすべてをログに記録し、次に必要な情報のログ出力で木箱名を見つけることです。その後、それに応じて環境変数を設定し、プログラムを再度実行できます。

このページの内容

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.