Bagikan melalui


Penyedia peristiwa terkenal di .NET

Runtime dan pustaka .NET menulis peristiwa diagnostik melalui sejumlah penyedia peristiwa yang berbeda. Bergantung pada kebutuhan diagnostik Anda, Anda dapat memilih penyedia yang sesuai untuk diaktifkan. Artikel ini menjelaskan beberapa penyedia peristiwa yang paling umum digunakan di runtime dan pustaka .NET.

CoreCLR

Penyedia "Microsoft-Windows-DotNETRuntime"

Penyedia ini memancarkan berbagai peristiwa dari runtime .NET, termasuk GC, loader, JIT, pengecualian, dan peristiwa lainnya. Baca selengkapnya tentang setiap peristiwa dari penyedia ini di Daftar Peristiwa Penyedia Runtime.

Penyedia "Microsoft-DotNETCore-SampleProfiler"

Penyedia ini adalah penyedia peristiwa runtime .NET yang digunakan untuk pengambilan sampel CPU untuk tumpukan panggilan terkelola. Saat diaktifkan, ia mengambil rekam jepret dari setiap tumpukan panggilan terkelola setiap milidetik. Untuk mengaktifkan pengambilan ini, Anda harus menentukan EventLevel dari Informational atau lebih tinggi.

Pustaka kerangka kerja

Penyedia "Microsoft-Extensions-DependencyInjection"

Penyedia ini mencatat informasi dari DependencyInjection. Tabel berikut ini memperlihatkan peristiwa yang Microsoft-Extensions-DependencyInjection dicatat oleh penyedia:

Nama kejadian Kata kunci Tingkat Deskripsi
CallSiteBuilt Verbose (5) Situs panggilan telah dibuat.
ServiceResolved Verbose (5) Layanan telah diselesaikan.
ExpressionTreeGenerated Verbose (5) Pohon ekspresi telah dihasilkan.
DynamicMethodBuilt Verbose (5) A DynamicMethod telah dibangun.
ScopeDisposed Verbose (5) Cakupan telah dibuang.
ServiceRealizationFailed Verbose (5) Realisasi layanan gagal.
ServiceProviderBuilt ServiceProviderInitialized(0x1) Verbose (5) A ServiceProvider telah dibangun.
ServiceProviderDescriptors ServiceProviderInitialized(0x1) Verbose (5) Daftar ServiceDescriptor yang telah digunakan selama ServiceProvider build.

Penyedia "System.Buffers.ArrayPoolEventSource"

Penyedia ini mencatat informasi dari ArrayPool. Tabel berikut ini memperlihatkan peristiwa yang dicatat oleh ArrayPoolEventSource:

Nama kejadian Tingkat Deskripsi
BufferRented Verbose (5) Buffer berhasil disewa.
BufferAllocated Informasional (4) Buffer dialokasikan oleh kumpulan.
BufferReturned Verbose (5) Buffer dikembalikan ke kumpulan.
BufferTrimmed Informasional (4) Buffer dicoba untuk dibebaskan karena tekanan memori atau tidak aktif.
BufferTrimPoll Informasional (4) Pemeriksaan sedang dilakukan untuk memangkas buffer.
BufferDropped Informasional (4) Buffer dihilangkan ketika dikembalikan ke kumpulan.

Penyedia "System.Net.Http"

Penyedia ini mencatat informasi dari tumpukan HTTP. Tabel berikut ini memperlihatkan peristiwa yang dicatat oleh System.Net.Http penyedia:

Nama kejadian Tingkat Deskripsi
RequestStart Informasional (4) Permintaan HTTP telah dimulai.
RequestStop Informasional (4) Permintaan HTTP telah selesai.
RequestFailed Kesalahan (2) Permintaan HTTP gagal.
Koneksi ionEstablished Informasional (4) Koneksi HTTP telah dibuat.
ConnectionClosed Informasional (4) Sambungan HTTP telah ditutup.
RequestLeftQueue Informasional (4) Permintaan HTTP telah meninggalkan antrean permintaan.
RequestHeadersStart Informasional (4) Permintaan HTTP untuk header telah dimulai.
RequestHeaderStop Informasional (4) Permintaan HTTP untuk header telah selesai.
RequestContentStart Informasional (4) Permintaan HTTP untuk konten telah dimulai.
RequestContentStop Informasional (4) Permintaan HTTP untuk konten telah selesai.
Mulai ResponseHeaders Informasional (4) Respons HTTP untuk header telah dimulai.
ResponseHeaderStop Informasional (4) Respons HTTP untuk header telah selesai.
ResponseContentStart Informasional (4) Respons HTTP untuk konten telah dimulai.
ResponseContentStop Informasional (4) Respons HTTP untuk konten telah selesai.

Penyedia "System.Net.NameResolution"

Penyedia ini mencatat informasi yang terkait dengan resolusi nama domain. Tabel berikut ini memperlihatkan peristiwa yang dicatat oleh System.Net.NameResolution:

Nama kejadian Tingkat Deskripsi
ResolutionStart Informasional (4) Resolusi nama domain telah dimulai.
ResolutionStop Informasional (4) Resolusi nama domain telah selesai.
ResolutionFailed Informasional (4) Resolusi nama domain gagal.

Penyedia "System.Net.Sockets"

Penyedia ini mencatat informasi dari Socket. Tabel berikut ini memperlihatkan peristiwa yang dicatat oleh System.Net.Sockets penyedia:

Nama kejadian Tingkat Deskripsi
ConnectStart Informasional (4) Upaya untuk memulai koneksi soket telah dimulai.
ConnectStop Informasional (4) Upaya untuk memulai koneksi soket telah selesai.
ConnectFailed Informasional (4) Upaya untuk memulai koneksi soket gagal.
AcceptStart Informasional (4) Upaya untuk menerima koneksi soket telah dimulai.
AcceptStop Informasional (4) Upaya untuk menerima koneksi soket telah selesai.
AcceptFailed Informasional (4) Upaya untuk menerima koneksi soket gagal.

Penyedia "System.Threading.Tasks.TplEventSource"

Penyedia ini mencatat informasi tentang Pustaka Paralel Tugas, seperti peristiwa Penjadwal tugas. Tabel berikut ini memperlihatkan peristiwa yang dicatat oleh TplEventSource:

Nama kejadian Kata kunci Tingkat Deskripsi
TaskScheduled TaskTransferAku akan menemuinya.0x1

TasksAku akan menemuinya.0x2
Informasional (4) Task diantrekan ke penjadwal Tugas.
TaskStarted TasksAku akan menemuinya.0x2 Informasional (4) A Task telah mulai mengeksekusi.
TaskCompleted TaskStopsAku akan menemuinya.0x40 Informasional (4) A Task telah selesai dieksekusi.
TaskWaitBegin TaskTransferAku akan menemuinya.0x1

TaskWaitAku akan menemuinya.0x2
Informasional (4) Diaktifkan ketika penantian implisit atau eksplisit pada Task penyelesaian telah dimulai.
TaskWaitEnd TasksAku akan menemuinya.0x2 Verbose (5) Diaktifkan saat penantian untuk Task penyelesaian kembali.
TaskWaitContinuationStarted TasksAku akan menemuinya.0x2 Verbose (5) Diaktifkan ketika pekerjaan (metode) yang TaskWaitEnd terkait dengan dimulai.
TaskWaitContinuationCompleted TaskStopsAku akan menemuinya.0x40 Verbose (5) Diaktifkan ketika pekerjaan (metode) yang TaskWaitEnd terkait dengan selesai.
AwaitTaskContinuationScheduled TaskTransferAku akan menemuinya.0x1

TasksAku akan menemuinya.0x2
Informasional (4) Diaktifkan ketika kelanjutan asinkron untuk dijadwalkan Task .

Inti ASP.NET

ASP.NET Core juga menyediakan beberapa peristiwa untuk membantu Anda mendiagnosis masalah di tumpukan ASP.NET Core.

Untuk mempelajari selengkapnya tentang peristiwa di ASP.NET Core dan cara menggunakannya, lihat Pengelogan di .NET Core dan ASP.NET Core.

Inti Kerangka Kerja Entitas

EF Core juga menyediakan peristiwa untuk membantu Anda mendiagnosis masalah di EF Core.

Untuk mempelajari selengkapnya tentang peristiwa di EF Core dan cara menggunakannya, lihat Peristiwa .NET di EF Core.