Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Osservabilità
Questa è la documentazione preliminare per una funzionalità della versione di anteprima. ed è soggetta a modifiche. |
L'osservabilità è la misura in cui lo stato attuale di un sistema può essere dedotto dai dati che emette. I dati emessi vengono comunemente definiti telemetria.
AWS SDK for .NET Può fornire due segnali di telemetria comuni, metriche e tracce, oltre alla registrazione. Puoi collegare un TelemetryProviderper inviare dati di telemetria a un backend di osservabilità (come o AWS X-RayAmazon CloudWatch) e quindi agire di conseguenza.
Per impostazione predefinita, i segnali di telemetria sono disabilitati in. SDK Questo argomento spiega come abilitare e configurare l'output di telemetria.
Risorse aggiuntive
Per ulteriori informazioni sull'abilitazione e l'utilizzo dell'osservabilità, consulta le seguenti risorse:
-
Il post sul blog Enhancing Observability in the AWS SDK for .NET with
. OpenTelemetry -
Per esempi di osservabilità in AWS Tools for PowerShell, vedere Observability nella Tools for PowerShell User Guide.
Configura un TelemetryProvider
È possibile configurare un TelemetryProvider
nella propria applicazione a livello globale per tutti i client di servizio o per singoli client, come illustrato negli esempi seguenti. La Provider di telemetria sezione contiene informazioni sulle implementazioni di telemetria, incluse informazioni sulle implementazioni fornite con. SDK
Configura il provider di telemetria globale predefinito
Per impostazione predefinita, ogni client di servizio tenta di utilizzare il provider di telemetria disponibile a livello globale. In questo modo, puoi impostare il provider una sola volta e tutti i client lo useranno. Questa operazione deve essere eseguita una sola volta, prima di creare qualsiasi client di servizio.
Il seguente frammento di codice mostra come impostare il provider di telemetria globale. Quindi crea un client di servizio Amazon S3 e tenta di eseguire un'operazione che non riesce. Il codice aggiunge tracciamento e metriche all'applicazione. Questo codice utilizza i seguenti NuGet pacchetti: OpenTelemetry.Exporter.Console
andOpenTelemetry.Instrumentation.AWS
, che è attualmente in versione non definitiva.
Nota
Se lo utilizzi AWS IAM Identity Center per l'autenticazione, assicurati di aggiungere AWSSDK.SSO
anche e. AWSSDK.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();
Configura un provider di telemetria per un client di servizio specifico
È possibile configurare un singolo client di servizio con un provider di telemetria specifico (diverso da quello globale). A tale scopo, utilizzate la TelemetryProvider
classe dell'oggetto Config di un costruttore di client di servizi. Ad esempio, consulta AmazonS3Config e cerca la proprietà. TelemetryProvider
Provider di telemetriaPer informazioni sulle implementazioni di telemetria personalizzate, consulta.