# Configuration de l'instrumentation HTTP

LLMS index: [llms.txt](/llms.txt)

---

## Capture des en-têtes de requête et de réponse HTTP {#capturing-http-request-and-response-headers}

Suivant la [convention sémantique](/docs/specs/semconv/http/http-spans/), vous
pouvez configurer l'agent pour capturer les en-têtes HTTP prédéfinis comme
attributs de span. Utilisez les propriétés suivantes pour définir les en-têtes
HTTP que vous souhaitez capturer :

<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>:
Une liste de noms d&#39;en-têtes HTTP séparés par des virgules. Les instrumentations
du client HTTP captureront les valeurs des en-têtes de requête HTTP pour tous
les noms d&#39;en-têtes configurés.
</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>:
Une liste de noms d&#39;en-têtes HTTP séparés par des virgules. Les instrumentations
du client HTTP captureront les valeurs des en-têtes de réponse HTTP pour tous
les noms d&#39;en-têtes configurés.
</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>:
Une liste de noms d&#39;en-têtes HTTP séparés par des virgules. Les instrumentations
du serveur HTTP captureront les valeurs des en-têtes de requête HTTP pour tous
les noms d&#39;en-têtes configurés.
</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>:
Une liste de noms d&#39;en-têtes HTTP séparés par des virgules. Les instrumentations
du serveur HTTP captureront les valeurs des en-têtes de réponse HTTP pour tous
les noms d&#39;en-têtes configurés.
</div>


Ces options de configuration sont supportées par toutes les instrumentations de
client et de serveur HTTP.

> **Note** : Les noms de propriété/variable d'environnement listés dans le
> tableau sont encore expérimentaux, et sont donc susceptibles de changer.

## Capture des paramètres de requête de servlet {#capturing-servlet-request-parameters}

Vous pouvez configurer l'agent pour capturer les paramètres de requête HTTP
prédéfinis comme attributs de span pour les requêtes qui sont gérées par l'API
Servlet. Utilisez la propriété suivante pour définir les paramètres de requête
de servlet que vous souhaitez capturer :

<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>:
Une liste de noms de paramètres de requête séparés par des virgules.
</div>


> **Note** : Les noms de propriété/variable d'environnement listés dans le
> tableau sont encore expérimentaux, et sont donc susceptibles de changer.

## Configuration des méthodes HTTP connues {#configuring-known-http-methods}

Configure l'instrumentation pour reconnaître un ensemble alternatif de méthodes
de requête HTTP. Toutes les autres méthodes seront traitées comme `_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>:
Une liste de méthodes HTTP connues séparées par des virgules.
</div>


## Activation de la télémétrie HTTP expérimentale {#enabling-experimental-http-telemetry}

Vous pouvez configurer l'agent pour capturer des données de télémétrie HTTP
expérimentales supplémentaires.

<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>:
Active la télémétrie expérimentale du client 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>:
Active la télémétrie expérimentale du serveur HTTP.
</div>


Pour les spans client et serveur, les attributs suivants sont ajoutés :

- `http.request.body.size` et `http.response.body.size` : La taille des corps de
  requête et de réponse, respectivement.

Pour les métriques client, les métriques suivantes sont créées :

- [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)

Pour les métriques serveur, les métriques suivantes sont créées :

- [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)
