デバッグのヒント: クライアントからワイヤトレース情報を取得 - AWS SDK for Ruby

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

デバッグのヒント: クライアントからワイヤトレース情報を取得

http_wire_trace Boolean を設定してAWS クライアントからワイヤトレース情報を取得できます。ワイヤトレース情報により、クライアントの変更、サービスの問題、ユーザーエラーの区別ができます。true の場合、設定にはネットワーク上で何が送信されているかが示されます。次の例では、クライアント作成時にワイヤトレーシングを有効にして Amazon S3 クライアントを作成します。

s3 = Aws::S3::Client.new(http_wire_trace: true)

次のコードと引数 bucket_name が付与された場合、出力はその名前のバケットが存在するかどうかを示すメッセージを表示します。

require 'aws-sdk-s3' s3 = Aws::S3::Resource.new(client: Aws::S3::Client.new(http_wire_trace: true)) if s3.bucket(ARGV[0]).exists? puts "Bucket #{ARGV[0]} exists" else puts "Bucket #{ARGV[0]} does not exist" end

バケットが存在する場合、出力は以下のような内容になります。(読みやすくするために HEAD 行に返却が追加されました。)

opening connection to bucket_name.s3-us-west-1.amazonaws.com:443... opened starting SSL for bucket_name.s3-us-west-1.amazonaws.com:443... SSL established, protocol: TLSv1.2, cipher: ECDHE-RSA-AES128-GCM-SHA256 -> "HEAD / HTTP/1.1 Accept-Encoding: User-Agent: aws-sdk-ruby3/3.171.0 ruby/3.2.2 x86_64-linux aws-sdk-s3/1.120.0 Host: bucket_name.s3-us-west-1.amazonaws.com X-Amz-Date: 20230427T143146Z /* omitted */ Accept: */*\r\n\r\n" -> "HTTP/1.1 200 OK\r\n" -> "x-amz-id-2: XxB2J+kpHgTjmMUwpkUI1EjaFSPxAjWRgkn/+z7YwWc/iAX5E3OXRBzJ37cfc8T4D7ELC1KFELM=\r\n" -> "x-amz-request-id: 5MD4APQQS815QVBR\r\n" -> "Date: Thu, 27 Apr 2023 14:31:47 GMT\r\n" -> "x-amz-bucket-region: us-east-1\r\n" -> "x-amz-access-point-alias: false\r\n" -> "Content-Type: application/xml\r\n" -> "Server: AmazonS3\r\n" -> "\r\n" Conn keep-alive Bucket bucket_name exists

クライアントの作成後にワイヤトレースを有効にすることもできます。

s3 = Aws::S3::Client.new s3.config.http_wire_trace = true

レポートされるワイヤトレース情報のフィールドの詳細については、「Transfer Family 必須リクエストヘッダー」を参照してください。