Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
AWS X-Ray SDK for .NET
X-Ray SDK untuk.NET adalah perpustakaan untuk menginstrumentasi aplikasi web C # .NET, aplikasi web .NET Core, dan fungsi-fungsi .NET Core. AWS Lambda Ini menyediakan kelas dan metode untuk menghasilkan dan mengirim penelusuran data ke Daemon X-Ray. Ini termasuk informasi tentang permintaan masuk yang dilayani oleh aplikasi, dan panggilan yang dilakukan aplikasi ke hilir Layanan AWS, API web HTTP, dan database SQL.
catatan
X-Ray SDK for .NET merupakan proyek sumber terbuka. Anda dapat mengikuti proyek dan mengirimkan masalah dan menarik permintaan di GitHub: github.com/aws/ aws-xray-sdk-dotnet
Untuk aplikasi web, mulai dengan menambahkan penanganan pesan ke konfigurasi web Anda untuk melacak permintaan yang masuk. Penanganan pesan membuat segmen untuk setiap permintaan yang ditelusuri, dan melengkapi segmen ketika respons dikirim. Ketika segmen terbuka Anda dapat menggunakan metode klien SDK untuk menambahkan informasi ke segmen dan membuat subsegmen untuk pelacakan panggilan hilir. SDK juga secara otomatis mencatat pengecualian yang aplikasi Anda lempar ketika segmen terbuka.
Untuk fungsi Lambda disebut oleh instrumen aplikasi atau layanan, Lambda membaca tracing header dan pelacakan sampel permintaan secara otomatis. Untuk fungsi lainnya, Anda dapat mengonfigurasi Lambda untuk sampel dan pelacakan permintaan masuk. Dalam kedua kasus, Lambda membuat segmen dan menyediakannya ke X-Ray SDK.
catatan
Pada Lambda, X-Ray SDK adalah opsional. Jika Anda tidak menggunakannya dalam fungsi Anda, peta layanan Anda masih akan menyertakan simpul untuk layanan Lambda, dan satu untuk setiap fungsi Lambda. Dengan menambahkan SDK, Anda dapat melakukan instrumen kode fungsi Anda untuk menambahkan subsegmen ke segmen fungsi yang dicatat oleh Lambda. Lihat AWS Lambda dan AWS X-Ray untuk informasi selengkapnya.
Berikutnya, gunakan X-Ray SDK for .NET untuk.Instrumen klien AWS SDK for .NET Anda. Setiap kali Anda melakukan panggilan ke hilir Layanan AWS atau sumber daya dengan klien yang diinstrumentasi, SDK akan mencatat informasi tentang panggilan di subsegmen. AWS layanan dan sumber daya yang Anda akses dalam layanan muncul sebagai node hilir pada peta jejak untuk membantu Anda mengidentifikasi kesalahan dan masalah pembatasan pada koneksi individual.
X-Ray SDK for .NET juga memberikan instrumentasi untuk panggilan hilir ke API web HTTP dan basis data SQL. Metode ekstensi GetResponseTraced
untuk panggilan HTTP keluar penelusuran System.Net.HttpWebRequest
. Anda dapat menggunakan versi X-Ray SDK untuk .NET dari SqlCommand
untuk melakukan instrumen kueri SQL.
Setelah Anda mulai menggunakan SDK, sesuaikan perilakunya dengan mengonfigurasi perekam dan penangan pesan. Anda dapat menambahkan plugin untuk mencatat data mengenai sumber daya komputasi yang berjalan di aplikasi Anda, menyesuaikan perilaku sampling dengan mendefinisikan aturan sampling, dan mengatur tingkat log untuk melihat lebih atau kurang informasi dari SDK dalam log aplikasi Anda.
Catat informasi tambahan tentang permintaan dan pekerjaan yang dilakukan aplikasi Anda dalam anotasi dan metadata. Anotasi adalah pasangan kunci-nilai sederhana yang diindeks untuk digunakan dengan ekspresi filter, sehingga Anda dapat mencari pelacakan yang berisi data tertentu. Entri metadata kurang bersifat membatasi dan dapat mencatat seluruh objek dan array — segala yang dapat disambungkan ke dalam JSON.
Anotasi dan Metadata
Anotasi dan metadata adalah teks abritari yang Anda tambahkan ke segmen dengan X-Ray SDK. Anotasi diindekskan untuk digunakan dengan ekspresi filter. Metadata tidak diindeks, tetapi dapat dilihat di segmen mentah dengan konsol X-Ray atau API. Siapa pun yang Anda berikan akses baca ke X-Ray dapat melihat data ini.
Bila Anda memiliki banyak klien diinstrumentasi dalam kode Anda, segmen permintaan tunggal dapat berisi sejumlah besar subsegmen, satu untuk setiap panggilan yang dibuat dengan klien berinstrumen. Anda dapat mengatur dan mengelompokkan subsegmen dengan membungkus panggilan klien di subsegmen kustom. Anda dapat membuat subsegmen kustom untuk seluruh fungsi atau bagian dari kode, dan mencatat metadata dan anotasi pada subsegmen bukan menulis segala sesuatu pada segmen induk.
Untuk referensi dokumentasi tentang SDK kelas dan metode, lihat hal berikut:
Paket yang sama mendukung baik NET dan NET Inti, tetapi kelas yang digunakan bervariasi. Contoh dalam link Bab ini ke referensi API .NET kecuali kelas khusus untuk Inti .NET.
Persyaratan
X-Ray SDK for .NET membutuhkan .NET Framework 4.5 atau yang lebih baru AWS SDK for .NET dan.
Untuk aplikasi NET Core dan fungsi, SDK membutuhkan NET Core 2.0 atau yang lebih baru.
Menambahkan X-Ray SDK for .NET untuk aplikasi Anda
Gunakan NuGet untuk menambahkan X-Ray SDK for .NET ke aplikasi Anda.
Untuk menginstal X-Ray SDK untuk.NET NuGet dengan manajer paket di Visual Studio
-
Pilih Tools, NuGet Package Manager, Manage NuGet Packages for Solution.
-
Cari AWSXRayRecorder.
-
Pilih paket, dan kemudian pilih Instal.
Manajemen dependensi
X-Ray SDK for .NET tersedia dari Nuget
Install-Package AWSXRayRecorder -Version 2.10.1
Paket nuget AWSXRayRecorder v2.10.1
memiliki dependensi berikut:
NET Framework 4.5
AWSXRayRecorder (2.10.1) | |-- AWSXRayRecorder.Core (>= 2.10.1) | |-- AWSSDK.Core (>= 3.3.25.1) | |-- AWSXRayRecorder.Handlers.AspNet (>= 2.7.3) | |-- AWSXRayRecorder.Core (>= 2.10.1) | |-- AWSXRayRecorder.Handlers.AwsSdk (>= 2.8.3) | |-- AWSXRayRecorder.Core (>= 2.10.1) | |-- AWSXRayRecorder.Handlers.EntityFramework (>= 1.1.1) | |-- AWSXRayRecorder.Core (>= 2.10.1) | |-- EntityFramework (>= 6.2.0) | |-- AWSXRayRecorder.Handlers.SqlServer (>= 2.7.3) | |-- AWSXRayRecorder.Core (>= 2.10.1) | |-- AWSXRayRecorder.Handlers.System.Net (>= 2.7.3) |-- AWSXRayRecorder.Core (>= 2.10.1)
NET Framework 2.0
AWSXRayRecorder (2.10.1) | |-- AWSXRayRecorder.Core (>= 2.10.1) | |-- AWSSDK.Core (>= 3.3.25.1) | |-- Microsoft.AspNetCore.Http (>= 2.0.0) | |-- Microsoft.Extensions.Configuration (>= 2.0.0) | |-- System.Net.Http (>= 4.3.4) | |-- AWSXRayRecorder.Handlers.AspNetCore (>= 2.7.3) | |-- AWSXRayRecorder.Core (>= 2.10.1) | |-- Microsoft.AspNetCore.Http.Extensions (>= 2.0.0) | |-- Microsoft.AspNetCore.Mvc.Abstractions (>= 2.0.0) | |-- AWSXRayRecorder.Handlers.AwsSdk (>= 2.8.3) | |-- AWSXRayRecorder.Core (>= 2.10.1) | |-- AWSXRayRecorder.Handlers.EntityFramework (>= 1.1.1) | |-- AWSXRayRecorder.Core (>= 2.10.1) | |-- Microsoft.EntityFrameworkCore.Relational (>= 3.1.0) | |-- AWSXRayRecorder.Handlers.SqlServer (>= 2.7.3) | |-- AWSXRayRecorder.Core (>= 2.10.1) | |-- System.Data.SqlClient (>= 4.4.0) | |-- AWSXRayRecorder.Handlers.System.Net (>= 2.7.3) |-- AWSXRayRecorder.Core (>= 2.10.1)
Untuk detail selengkapnya tentang manajemen dependensi, lihat dokumentasi Microsoft tentang Ketergantungan nuget