# HTTP 計装の設定

Site [llms.txt](/ja/llms.txt)

---

## HTTP リクエストヘッダーとレスポンスヘッダーのキャプチャ {#capturing-http-request-and-response-headers}

[セマンティック規約](/docs/specs/semconv/http/http-spans/)に従って、事前に定義した HTTP ヘッダーをスパン属性としてキャプチャするようにエージェントを設定できます。
キャプチャする HTTP ヘッダーを定義するには、以下のプロパティを使用してください。

<div class="config-option">
<details>
  <summary title="Expand to view environment variable">
    <span class="label">System property</span>:
      <code>otel.instrumentation.http.client.capture-request-headers</code>
  </summary>
  <span class="label">Environment variable</span>:
    <code>OTEL_INSTRUMENTATION_HTTP_CLIENT_CAPTURE_REQUEST_HEADERS</code>
</details>

<span class="label">Description</span>:
HTTP ヘッダー名のカンマ区切りリスト。
HTTP クライアントの計装は、設定されたすべてのヘッダー名について HTTP リクエストヘッダーの値をキャプチャします。
</div>


<div class="config-option">
<details>
  <summary title="Expand to view environment variable">
    <span class="label">System property</span>:
      <code>otel.instrumentation.http.client.capture-response-headers</code>
  </summary>
  <span class="label">Environment variable</span>:
    <code>OTEL_INSTRUMENTATION_HTTP_CLIENT_CAPTURE_RESPONSE_HEADERS</code>
</details>

<span class="label">Description</span>:
HTTP ヘッダー名のカンマ区切りリスト。
HTTP クライアントの計装は、設定されたすべてのヘッダー名について HTTP レスポンスヘッダーの値をキャプチャします。
</div>


<div class="config-option">
<details>
  <summary title="Expand to view environment variable">
    <span class="label">System property</span>:
      <code>otel.instrumentation.http.server.capture-request-headers</code>
  </summary>
  <span class="label">Environment variable</span>:
    <code>OTEL_INSTRUMENTATION_HTTP_SERVER_CAPTURE_REQUEST_HEADERS</code>
</details>

<span class="label">Description</span>:
HTTP ヘッダー名のカンマ区切りリスト。
HTTP サーバーの計装は、設定されたすべてのヘッダー名について HTTP リクエストヘッダーの値をキャプチャします。
</div>


<div class="config-option">
<details>
  <summary title="Expand to view environment variable">
    <span class="label">System property</span>:
      <code>otel.instrumentation.http.server.capture-response-headers</code>
  </summary>
  <span class="label">Environment variable</span>:
    <code>OTEL_INSTRUMENTATION_HTTP_SERVER_CAPTURE_RESPONSE_HEADERS</code>
</details>

<span class="label">Description</span>:
HTTP ヘッダー名のカンマ区切りリスト。
HTTP サーバーの計装は、設定されたすべてのヘッダー名について HTTP レスポンスヘッダーの値をキャプチャします。
</div>


これらの設定オプションは、すべての HTTP クライアントおよびサーバーの計装でサポートされています。

> **Note**: テーブルに記載されているプロパティ名や環境変数名はまだ実験的なものであり、変更される可能性があります。

## サーブレットリクエストパラメーターのキャプチャ {#capturing-servlet-request-parameters}

Servlet API で処理されるリクエストについて、事前に定義した HTTP リクエストパラメーターをスパン属性としてキャプチャするようにエージェントを設定できます。
キャプチャするサーブレットリクエストパラメーターを定義するには、以下のプロパティを使用してください。

<div class="config-option">
<details>
  <summary title="Expand to view environment variable">
    <span class="label">System property</span>:
      <code>otel.instrumentation.servlet.experimental.capture-request-parameters</code>
  </summary>
  <span class="label">Environment variable</span>:
    <code>OTEL_INSTRUMENTATION_SERVLET_EXPERIMENTAL_CAPTURE_REQUEST_PARAMETERS</code>
</details>

<span class="label">Description</span>:
リクエストパラメーター名のカンマ区切りリスト。
</div>


> **Note**: テーブルに記載されているプロパティ名や環境変数名はまだ実験的なものであり、変更される可能性があります。

## 既知の HTTP メソッドの設定 {#configuring-known-http-methods}

代替の HTTP リクエストメソッドのセットを認識するように計装を設定します。
その他のすべてのメソッドは `_OTHER` として扱われます。

<div class="config-option">
<details>
  <summary title="Expand to view environment variable">
    <span class="label">System property</span>:
      <code>otel.instrumentation.http.known-methods</code>
  </summary>
  <span class="label">Environment variable</span>:
    <code>OTEL_INSTRUMENTATION_HTTP_KNOWN_METHODS</code>
</details>

<span class="label">Default</span>: CONNECT,DELETE,GET,HEAD,OPTIONS,PATCH,POST,PUT,TRACE<br>
<span class="label">Description</span>:
既知の HTTP メソッドのカンマ区切りリスト。
</div>


## 実験的な HTTP テレメトリーの有効化 {#enabling-experimental-http-telemetry}

追加の実験的な HTTP テレメトリーデータをキャプチャするようにエージェントを設定できます。

<div class="config-option">
<details>
  <summary title="Expand to view environment variable">
    <span class="label">System property</span>:
      <code>otel.instrumentation.http.client.emit-experimental-telemetry</code>
  </summary>
  <span class="label">Environment variable</span>:
    <code>OTEL_INSTRUMENTATION_HTTP_CLIENT_EMIT_EXPERIMENTAL_TELEMETRY</code>
</details>

<span class="label">Default</span>: false<br>
<span class="label">Description</span>:
実験的な HTTP クライアントテレメトリーを有効にします。
</div>


<div class="config-option">
<details>
  <summary title="Expand to view environment variable">
    <span class="label">System property</span>:
      <code>otel.instrumentation.http.server.emit-experimental-telemetry</code>
  </summary>
  <span class="label">Environment variable</span>:
    <code>OTEL_INSTRUMENTATION_HTTP_SERVER_EMIT_EXPERIMENTAL_TELEMETRY</code>
</details>

<span class="label">Default</span>: false<br>
<span class="label">Description</span>:
実験的な HTTP サーバーテレメトリーを有効にします。
</div>


クライアントおよびサーバーのスパンには、以下の属性が追加されます。

- `http.request.body.size` と `http.response.body.size`: それぞれリクエストボディとレスポンスボディのサイズ。

クライアントメトリクスには、以下のメトリクスが作成されます。

- [http.client.request.body.size](/docs/specs/semconv/http/http-metrics/#metric-httpclientrequestbodysize)
- [http.client.response.body.size](/docs/specs/semconv/http/http-metrics/#metric-httpclientresponsebodysize)

サーバーメトリクスには、以下のメトリクスが作成されます。

- [http.server.active_requests](/docs/specs/semconv/http/http-metrics/#metric-httpserveractive_requests)
- [http.server.request.body.size](/docs/specs/semconv/http/http-metrics/#metric-httpserverrequestbodysize)
- [http.server.response.body.size](/docs/specs/semconv/http/http-metrics/#metric-httpserverresponsebodysize)
