Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Jika penelusuran kesalahan atau pengamatan tidak cukup, .NET mendukung mekanisme diagnostik tambahan.
Pelacakan dengan Sumber Peristiwa
Sumber Peristiwa menyediakan kemampuan untuk mengumpulkan informasi diagnostik terperinci tentang apa yang terjadi di dalam proses .NET. Ini termasuk informasi telemetri untuk runtime, GC, pustaka, dan kode aplikasi.
Data Sumber Peristiwa dapat dikumpulkan dalam proses menggunakan System.Diagnostics.Tracing.EventListener API atau dengan alat diagnostik eksternal seperti Visual Studio, dotnet-monitor, dotnet-trace, PerfView, dan skrip Perfcollect . Menggunakan alat eksternal untuk mengumpulkan data sumber peristiwa dalam jejak biasanya digunakan untuk analisis performa.
EventPipe
EventPipe adalah komponen runtime yang dapat digunakan untuk mengumpulkan data pelacakan, mirip dengan ETW atau LTTng. Tujuan dari EventPipe adalah untuk memungkinkan pengembang .NET dengan mudah melacak aplikasi .NET mereka tanpa harus mengandalkan komponen khusus platform OS-native, seperti ETW atau LTTng.
EventPipe adalah mekanisme di balik banyak alat diagnostik. Ini dapat digunakan untuk mengonsumsi peristiwa yang dipancarkan oleh runtime serta peristiwa kustom yang ditulis dengan EventSource.
Crash dump
Cadangan adalah file yang berisi rekam jepret proses pada saat pembuatan cadangan. Cadangan dapat berguna untuk memeriksa status aplikasi Anda untuk tujuan penelusuran kesalahan.
Simbol
Simbol adalah pemetaan antara kode sumber dan biner yang dihasilkan oleh pengkompilasi. Ini biasanya digunakan oleh debugger .NET dan alat pelacakan untuk mengatasi nomor baris sumber, nama variabel lokal, dan jenis informasi diagnostik lainnya.
Port diagnostik
Runtime .NET mengekspos titik akhir layanan yang memungkinkan proses lain mengirim perintah diagnostik dan menerima respons melalui saluran IPC. Titik akhir ini disebut port diagnostik. Perintah dapat dikirim ke port diagnostik untuk:
- Ambil crash dump memori.
- Memulai jejak EventPipe.
- Minta baris perintah yang digunakan untuk meluncurkan aplikasi.
DiagnosticSource & DiagnosticListener
DiagnosticSource adalah modul yang memungkinkan kode diinstrumentasikan untuk pengelogan waktu produksi payload data yang kaya untuk dikonsumsi dalam proses yang diinstrumentasikan. Pada runtime, konsumen dapat secara dinamis menemukan sumber data dan berlangganan sumber data yang menarik. System.Diagnostics.DiagnosticSource dirancang untuk memungkinkan alat dalam proses mengakses data yang kaya, seperti oleh pustaka instrumentasi OpenTelemetry. Data DiagnosticSource juga dapat dikeluarkan melalui EventPipe, yang memungkinkan data diagnostik yang kaya dikumpulkan oleh alat khusus.
Mengumpulkan diagnostik dalam kontainer
Alat diagnostik yang sama yang digunakan di lingkungan Linux non-kontainer juga dapat digunakan untuk mengumpulkan diagnostik dalam kontainer. Hanya ada beberapa perubahan penggunaan yang diperlukan untuk memastikan alat berfungsi dalam kontainer Docker.