Observabilitas - AWS SDK for .NET

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Observabilitas

Ini adalah dokumentasi prarilis untuk fitur dalam rilis pratinjau. Dokumentasi dapat berubah.

Observabilitas adalah sejauh mana keadaan sistem saat ini dapat disimpulkan dari data yang dipancarkannya. Data yang dipancarkan biasanya disebut sebagai telemetri.

AWS SDK for .NET Dapat menyediakan dua sinyal telemetri umum, metrik dan jejak, serta pencatatan. Anda dapat menghubungkan data telemetri TelemetryProvideruntuk mengirim ke backend observabilitas (seperti atau AWS X-RayAmazon CloudWatch) dan kemudian menindaklanjutinya.

Secara default, sinyal telemetri dinonaktifkan di file. SDK Topik ini menjelaskan cara mengaktifkan dan mengonfigurasi keluaran telemetri.

Sumber daya tambahan

Untuk informasi selengkapnya tentang mengaktifkan dan menggunakan observabilitas, lihat sumber daya berikut:

Konfigurasikan a TelemetryProvider

Anda dapat mengonfigurasi a TelemetryProvider dalam aplikasi Anda secara global untuk semua klien layanan atau untuk klien individu, seperti yang ditunjukkan dalam contoh berikut. Penyedia telemetriBagian ini berisi informasi tentang implementasi telemetri, termasuk informasi tentang implementasi yang disediakan bersama. SDK

Konfigurasikan penyedia telemetri global default

Secara default, setiap klien layanan mencoba menggunakan penyedia telemetri yang tersedia secara global. Dengan cara ini, Anda dapat mengatur penyedia sekali, dan semua klien akan menggunakannya. Ini harus dilakukan hanya sekali, sebelum Anda membuat klien layanan apa pun.

Cuplikan kode berikut menunjukkan cara mengatur penyedia telemetri global. Kemudian menciptakan klien layanan Amazon S3 dan mencoba melakukan operasi yang gagal. Kode menambahkan penelusuran dan metrik ke aplikasi. Kode ini menggunakan NuGet paket-paket berikut: OpenTelemetry.Exporter.Console danOpenTelemetry.Instrumentation.AWS, yang saat ini dalam prarilis.

catatan

Jika Anda menggunakan AWS IAM Identity Center untuk otentikasi, pastikan untuk juga menambahkan AWSSDK.SSO danAWSSDK.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();

Konfigurasikan penyedia telemetri untuk klien layanan tertentu

Anda dapat mengonfigurasi klien layanan individual dengan penyedia telemetri tertentu (selain yang global). Untuk melakukannya, gunakan TelemetryProvider kelas objek Config dari konstruktor klien layanan. Misalnya, lihat Amazons3config dan cari propertinya. TelemetryProvider Lihat Penyedia telemetri untuk informasi tentang implementasi telemetri kustom.