

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用適用於 Ruby 的 AWS SDK 用戶端的線路追蹤資訊進行偵錯
<a name="debugging"></a>

您可以設定`http_wire_trace`布林值，從 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 必要請求標頭](https://docs.aws.amazon.com/transfer/latest/userguide/making-api-requests.html#request-headers)。