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.
Observabilité
Il s'agit de la documentation d'avant-première d'une fonctionnalité en version préliminaire. Elle est susceptible d’être modifiée. |
L'observabilité est la mesure dans laquelle l'état actuel d'un système peut être déduit des données qu'il émet. Les données émises sont communément appelées télémétrie.
Ils AWS SDK for .NET peuvent fournir deux signaux de télémétrie courants, les métriques et les traces, ainsi que la journalisation. Vous pouvez connecter un TelemetryProviderpour envoyer des données de télémétrie à un backend d'observabilité (tel que AWS X-RayAmazon CloudWatch), puis agir en conséquence.
Par défaut, les signaux de télémétrie sont désactivés dans le. SDK Cette rubrique explique comment activer et configurer la sortie de télémétrie.
Ressources supplémentaires
Pour plus d'informations sur l'activation et l'utilisation de l'observabilité, consultez les ressources suivantes :
-
Le billet de blog Enhancing Observability in the AWS SDK for .NET with OpenTelemetry
. -
Pour des exemples d'observabilité dans le AWS Tools for PowerShell, voir Observabilité dans le guide PowerShell d'utilisation des outils.
Configurez un TelemetryProvider
Vous pouvez configurer un TelemetryProvider
dans votre application globalement pour tous les clients de service ou pour des clients individuels, comme indiqué dans les exemples suivants. La Fournisseurs de services de télémétrie section contient des informations sur les implémentations de télémétrie, notamment des informations sur les implémentations fournies avec le. SDK
Configuration du fournisseur de télémétrie global par défaut
Par défaut, chaque client de service tente d'utiliser le fournisseur de télémétrie disponible dans le monde entier. De cette façon, vous pouvez définir le fournisseur une seule fois, et tous les clients l'utiliseront. Cela ne doit être fait qu'une seule fois, avant de créer des clients de service.
L'extrait de code suivant explique comment définir le fournisseur de télémétrie global. Il crée ensuite un client de service Amazon S3 et tente d'effectuer une opération qui échoue. Le code ajoute à la fois le suivi et les métriques à l'application. Ce code utilise les NuGet packages suivants : OpenTelemetry.Exporter.Console
etOpenTelemetry.Instrumentation.AWS
, qui est actuellement en version préliminaire.
Note
Si vous l'utilisez AWS IAM Identity Center pour l'authentification, veillez également à ajouter AWSSDK.SSO
etAWSSDK.SSOOIDC
.
using Amazon.S3; using OpenTelemetry; using OpenTelemetry.Metrics; using OpenTelemetry.Resources; using OpenTelemetry.Trace; Sdk.CreateTracerProviderBuilder() .ConfigureResource(e => e.AddService("DemoOtel")) .AddAWSInstrumentation() .AddConsoleExporter() .Build(); Sdk.CreateMeterProviderBuilder() .ConfigureResource(e => e.AddService("DemoOtel")) .AddAWSInstrumentation() .AddConsoleExporter() .Build(); var s3Client = new AmazonS3Client(); try { var listBucketsResponse = await s3Client.ListBucketsAsync(); // Attempt to delete a bucket that doesn't exist. var deleteBucketResponse = await s3Client.DeleteBucketAsync("
amzn-s3-demo-bucket
"); } catch (Exception ex) { Console.WriteLine(ex.Message); } Console.Read();
Configuration d'un fournisseur de télémétrie pour un client de service spécifique
Vous pouvez configurer un client de service individuel auprès d'un fournisseur de télémétrie spécifique (autre que le fournisseur global). Pour ce faire, utilisez la TelemetryProvider
classe de l'objet Config d'un constructeur de client de service. Par exemple, consultez AmazonS3Config et recherchez la propriété. TelemetryProvider
Consultez Fournisseurs de services de télémétrie pour plus d'informations sur les implémentations de télémétrie personnalisées.