

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Fournisseurs de services de télémétrie
<a name="observability-telemetry-providers"></a>

Le SDK prend actuellement en charge [OpenTelemetry](https://opentelemetry.io/)(OTel) en tant que fournisseur. Le SDK pourrait proposer des fournisseurs de télémétrie supplémentaires à l'avenir.

**Topics**
+ [Configuration du fournisseur OpenTelemetry de télémétrie basé](observability-telemetry-providers-otel.md)

# Configuration du fournisseur OpenTelemetry de télémétrie basé
<a name="observability-telemetry-providers-otel"></a>

Le SDK pour Kotlin fournit une implémentation de l'`TelemetryProvider`interface soutenue par. OpenTelemetry

## Conditions préalables
<a name="observability-telemetry-providers-otel-prereqs"></a>

Mettez à jour les dépendances de votre projet pour ajouter le OpenTelemetry fournisseur, comme indiqué dans l'extrait de code Gradle suivant. Vous pouvez accéder au *X.Y.Z* lien pour voir la dernière version disponible.

```
dependencies {
    implementation(platform("aws.smithy.kotlin:bom:[https://github.com/smithy-lang/smithy-kotlin/releases/latest](https://github.com/smithy-lang/smithy-kotlin/releases/latest)"))
    implementation(platform("io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom:[https://search.maven.org/#search|gav|1|g:io.opentelemetry.instrumentation%20AND%20a:opentelemetry-instrumentation-bom](https://search.maven.org/#search|gav|1|g:io.opentelemetry.instrumentation%20AND%20a:opentelemetry-instrumentation-bom)"))
    implementation("aws.smithy.kotlin:telemetry-provider-otel")

    // OPTIONAL: If you use log4j, the following entry enables the ability to export logs through OTel.
    runtimeOnly("io.opentelemetry.instrumentation:opentelemetry-log4j-appender-2.17")
}
```

## Configuration du kit SDK
<a name="observability-telemetry-providers-otel-conf"></a>

Le code suivant configure un client de service à l'aide du fournisseur de OpenTelemetry télémétrie.

```
import aws.sdk.kotlin.services.s3.S3Client
import aws.smithy.kotlin.runtime.telemetry.otel.OpenTelemetryProvider
import io.opentelemetry.api.GlobalOpenTelemetry
import kotlinx.coroutines.runBlocking

fun main() = runBlocking {
    val otelProvider = OpenTelemetryProvider(GlobalOpenTelemetry.get())

    S3Client.fromEnvironment().use { s3 ->
        telemetryProvider = otelProvider
        …
    }
}
```

**Note**  
Une discussion sur la configuration du OpenTelemetry SDK n'entre pas dans le cadre de ce guide. La [documentation OpenTelemetry Java](https://opentelemetry.io/docs/instrumentation/java/) contient des informations de configuration sur les différentes approches : [manuellement](https://opentelemetry.io/docs/instrumentation/java/manual/), automatiquement via l'[agent Java](https://opentelemetry.io/docs/instrumentation/java/automatic/) ou le [collecteur](https://opentelemetry.io/docs/collector/) (facultatif).

## Ressources
<a name="observability-telemetry-providers-otel-res"></a>

Les ressources suivantes sont disponibles pour vous aider à démarrer OpenTelemetry.
+ AWS Page d'accueil de [Distro for OpenTelemetry](https://aws-otel.github.io/docs/introduction) - AWS OTe L Distro
+ [aws-otel-java-instrumentation](https://github.com/aws-observability/aws-otel-java-instrumentation)- AWS Bibliothèque d'instrumentation Distro pour OpenTelemetry Java
+ [aws-otel-lambda](https://github.com/aws-observability/aws-otel-lambda)- couches OpenTelemetry Lambda AWS gérées
+ [aws-otel-collector](https://github.com/aws-observability/aws-otel-collector)- AWS Distro pour collectionneur OpenTelemetry
+ [AWS Meilleures pratiques d'observabilité - Bonnes pratiques](https://aws-observability.github.io/observability-best-practices/) générales en matière d'observabilité spécifiques à AWS