Dobrze znane zdarzeniaCounters na platformie .NET
Środowisko uruchomieniowe i biblioteki platformy .NET implementują i publikują kilka elementów EventCounters , które mogą służyć do identyfikowania i diagnozowania różnych problemów z wydajnością. Ten artykuł zawiera informacje dotyczące dostawców, których można użyć do monitorowania tych liczników i ich opisów. Zapoznaj się z dobrze znanymi metrykami zamiast tego, jeśli pracujesz z programem . Nowszy interfejs API System.Diagnostics.Metrics platformy NET.
Liczniki System.Runtime
Poniższe liczniki są publikowane w ramach środowiska uruchomieniowego platformy .NET (CoreCLR) i są przechowywane w RuntimeEventSource.cs.
Licznik | opis | Pierwszy dostępny w programie |
---|---|---|
% Time in GC since last GC (time-in-gc ) |
Procent czasu w GC od ostatniego GC | .NET Core 3.1 |
Allocation Rate (alloc-rate ) |
Liczba bajtów przydzielonych na interwał aktualizacji | .NET Core 3.1 |
CPU Usage (cpu-usage ) |
Procent użycia procesora CPU procesu względem wszystkich zasobów procesora CPU systemu | .NET Core 3.1 |
Exception Count (exception-count ) |
Liczba wyjątków, które wystąpiły | .NET Core 3.1 |
GC Heap Size (gc-heap-size ) |
Liczba megabajtów, które należy przydzielić na podstawie GC.GetTotalMemory(Boolean) | .NET Core 3.1 |
Gen 0 GC Count (gen-0-gc-count ) |
Liczba przypadków wystąpienia GC dla 0. generacji na interwał aktualizacji | .NET Core 3.1 |
Gen 0 Size (gen-0-size ) |
Liczba bajtów dla generacji 0 GC | .NET Core 3.1 |
Gen 1 GC Count (gen-1-gc-count ) |
Liczba przypadków wystąpienia GC dla generacji 1 na interwał aktualizacji | .NET Core 3.1 |
Gen 1 Size (gen-1-size ) |
Liczba bajtów dla GC 1. generacji | .NET Core 3.1 |
Gen 2 GC Count (gen-2-gc-count ) |
Liczba przypadków wystąpienia GC dla 2. generacji na interwał aktualizacji | .NET Core 3.1 |
Gen 2 Size (gen-2-size ) |
Liczba bajtów dla gen. 2 GC | .NET Core 3.1 |
LOH Size (loh-size ) |
Liczba bajtów dla sterty dużego obiektu | .NET Core 3.1 |
POH Size (poh-size ) |
Liczba bajtów przypiętego sterty obiektu (dostępna na platformie .NET 5 i nowszych wersjach) | .NET Core 3.1 |
GC Fragmentation (gc-fragmentation ) |
Fragmentacja stert GC (dostępna na platformie .NET 5 lub nowszych wersjach) | .NET Core 3.1 |
Monitor Lock Contention Count (monitor-lock-contention-count ) |
Liczba wystąpień rywalizacji podczas próby podjęcia blokady monitora na podstawie Monitor.LockContentionCount | .NET Core 3.1 |
Number of Active Timers (active-timer-count ) |
Liczba Timer wystąpień, które są obecnie aktywne, na podstawie Timer.ActiveCount | .NET Core 3.1 |
Number of Assemblies Loaded (assembly-count ) |
Liczba Assembly wystąpień załadowanych do procesu w danym momencie | .NET Core 3.1 |
ThreadPool Completed Work Item Count (threadpool-completed-items-count ) |
Liczba elementów roboczych, które zostały przetworzone do tej pory w ThreadPool | .NET Core 3.1 |
ThreadPool Queue Length (threadpool-queue-length ) |
Liczba elementów roboczych, które są obecnie w kolejce do przetworzenia w obiekcie ThreadPool | .NET Core 3.1 |
ThreadPool Thread Count (threadpool-thread-count ) |
Liczba wątków, które obecnie istnieją w obiekcie ThreadPool, na podstawie ThreadPool.ThreadCount | .NET Core 3.1 |
Working Set (working-set ) |
Liczba megabajtów pamięci fizycznej zamapowanej na kontekst procesu w danym momencie na podstawie Environment.WorkingSet | .NET Core 3.1 |
IL Bytes Jitted (il-bytes-jitted ) |
Całkowity rozmiar list ILS skompilowanych w bajtach | .NET 5 |
Methods Jitted Count (methods-jitted-count ) |
Liczba metod skompilowanych w trybie JIT | .NET 5 |
GC Committed Bytes (gc-committed ) |
Liczba bajtów zatwierdzonych przez GC | .NET 6 |
Liczniki Microsoft.AspNetCore.Hosting
Poniższe liczniki są publikowane w ramach ASP.NET Core i są przechowywane w HostingEventSource.cs.
Licznik | opis | Pierwszy dostępny w programie |
---|---|---|
Current Requests (current-requests ) |
Łączna liczba rozpoczętych żądań, ale jeszcze nie została zatrzymana | .NET Core 3.1 |
Failed Requests (failed-requests ) |
Łączna liczba żądań zakończonych niepowodzeniem, które wystąpiły przez całe życie aplikacji | .NET Core 3.1 |
Request Rate (requests-per-second ) |
Liczba żądań występujących w interwale aktualizacji | .NET Core 3.1 |
Total Requests (total-requests ) |
Łączna liczba żądań, które wystąpiły przez całe życie aplikacji | .NET Core 3.1 |
Liczniki Microsoft.AspNetCore.Http.Connections
Poniższe liczniki są publikowane w ramach ASP.NET Core SignalR i są przechowywane w HttpConnectionsEventSource.cs.
Licznik | opis | Pierwszy dostępny w programie |
---|---|---|
Average Connection Duration (connections-duration ) |
Średni czas trwania połączenia w milisekundach | .NET Core 3.1 |
Current Connections (current-connections ) |
Liczba aktywnych połączeń, które zostały uruchomione, ale nie została jeszcze zatrzymana | .NET Core 3.1 |
Total Connections Started (connections-started ) |
Całkowita liczba rozpoczętych połączeń | .NET Core 3.1 |
Total Connections Stopped (connections-stopped ) |
Łączna liczba zatrzymanych połączeń | .NET Core 3.1 |
Total Connections Timed Out (connections-timed-out ) |
Łączna liczba połączeń, które upłynął limit czasu | .NET Core 3.1 |
Liczniki Microsoft-AspNetCore-Server-Kestrel
Poniższe liczniki są publikowane w ramach serwera internetowego ASP.NET Core Kestrel i są przechowywane w KestrelEventSource.cs.
Licznik | opis | Pierwszy dostępny w programie |
---|---|---|
Connection Queue Length (connection-queue-length ) |
Bieżąca długość kolejki połączeń | .NET 5 |
Connection Rate (connections-per-second ) |
Liczba połączeń na interwał aktualizacji serwera internetowego | .NET 5 |
Current Connections (current-connections ) |
Bieżąca liczba aktywnych połączeń z serwerem sieci Web | .NET 5 |
Current TLS Handshakes (current-tls-handshakes ) |
Bieżąca liczba uzgadniań protokołu TLS | .NET 5 |
Current Upgraded Requests (WebSockets) (current-upgraded-requests ) |
Bieżąca liczba uaktualnionych żądań (WebSocket) | .NET 5 |
Failed TLS Handshakes (failed-tls-handshakes ) |
Całkowita liczba nieudanych uzgadniań protokołu TLS | .NET 5 |
Request Queue Length (request-queue-length ) |
Bieżąca długość kolejki żądań | .NET 5 |
TLS Handshake Rate (tls-handshakes-per-second ) |
Liczba uzgadniań protokołu TLS na interwał aktualizacji | .NET 5 |
Total Connections (total-connections ) |
Całkowita liczba połączeń z serwerem sieci Web | .NET 5 |
Total TLS Handshakes (total-tls-handshakes ) |
Całkowita liczba uzgadniań protokołu TLS z serwerem internetowym | .NET 5 |
Liczniki System.Net.Http
Następujące liczniki są publikowane przez stos HTTP i są przechowywane w HttpTelemetry.AnyOS.cs.
Licznik | opis | Pierwszy dostępny w programie |
---|---|---|
Requests Started (requests-started ) |
Liczba żądań rozpoczętych od rozpoczęcia procesu | .NET 5 |
Requests Started Rate (requests-started-rate ) |
Liczba żądań rozpoczętych na interwał aktualizacji | .NET 5 |
Requests Failed (requests-failed ) |
Liczba żądań zakończonych niepowodzeniem od rozpoczęcia procesu | .NET 5 |
Requests Failed Rate (requests-failed-rate ) |
Liczba żądań zakończonych niepowodzeniem na interwał aktualizacji | .NET 5 |
Current Requests (current-requests ) |
Bieżąca liczba aktywnych żądań HTTP, które zostały uruchomione, ale nie zostały jeszcze ukończone lub zakończone niepowodzeniem | .NET 5 |
Current HTTP 1.1 Connections (http11-connections-current-total ) |
Bieżąca liczba połączeń HTTP 1.1, które zostały uruchomione, ale nie zostały jeszcze zakończone lub nie powiodły się | .NET 5 |
Current HTTP 2.0 Connections (http20-connections-current-total ) |
Bieżąca liczba połączeń HTTP 2.0, które zostały uruchomione, ale nie zostały jeszcze zakończone lub nie powiodły się | .NET 5 |
Current HTTP 3.0 Connections (http30-connections-current-total ) |
Bieżąca liczba połączeń HTTP 3.0, które zostały uruchomione, ale nie zostały jeszcze zakończone lub nie powiodły się | .NET 7 |
HTTP 1.1 Requests Queue Duration (http11-requests-queue-duration ) |
Średni czas trwania żądań HTTP 1.1 spędzonych w kolejce żądań | .NET 5 |
HTTP 2.0 Requests Queue Duration (http20-requests-queue-duration ) |
Średni czas trwania żądań HTTP 2.0 spędzonych w kolejce żądań | .NET 5 |
HTTP 3.0 Requests Queue Duration (http30-requests-queue-duration ) |
Średni czas trwania żądań HTTP 3.0 spędzonych w kolejce żądań | .NET 7 |
Liczniki System.Net.NameResolution
Poniższe liczniki śledzą metryki związane z wyszukiwaniami DNS i są mantainowane w NameResolutionTelemetry.cs.
Licznik | opis | Pierwszy dostępny w programie |
---|---|---|
DNS Lookups Requested (dns-lookups-requested ) |
Liczba żądań wyszukiwania DNS od rozpoczęcia procesu | .NET 5 |
Average DNS Lookup Duration (dns-lookups-duration ) |
Średni czas potrzebny na wyszukiwanie DNS | .NET 5 |
Current DNS Lookups (current-dns-lookups ) |
Bieżąca liczba wyszukiwań DNS, które zostały uruchomione, ale nie zostały jeszcze ukończone lub zakończone niepowodzeniem | .NET 6 |
Liczniki System.Net.Security
Poniższe liczniki śledzą metryki związane z protokołem Transport Layer Security i są mantained w NetSecurityTelemetry.cs.
Licznik | opis | Pierwszy dostępny w programie |
---|---|---|
TLS handshakes completed (tls-handshake-rate ) |
Liczba ukończonych uzgadniań protokołu TLS w interwale aktualizacji | .NET 5 |
Total TLS handshakes completed (total-tls-handshakes ) |
Całkowita liczba ukończonych uzgadniań protokołu TLS od czasu rozpoczęcia procesu | .NET 5 |
Current TLS handshakes (current-tls-handshakes ) |
Bieżąca liczba uzgadniań protokołu TLS, które zostały uruchomione, ale nie zostały jeszcze ukończone | .NET 5 |
Total TLS handshakes failed (failed-tls-handshakes ) |
Całkowita liczba zakończonych niepowodzeniem uzgadniania protokołu TLS od rozpoczęcia procesu | .NET 5 |
All TLS Sessions Active (all-tls-sessions-open ) |
Liczba aktywnych sesji protokołu TLS dowolnej wersji | .NET 5 |
TLS 1.0 Sessions Active (tls10-sessions-open ) |
Liczba aktywnych sesji protokołu TLS 1.0 | .NET 5 |
TLS 1.1 Sessions Active (tls11-sessions-open ) |
Liczba aktywnych sesji protokołu TLS 1.1 | .NET 5 |
TLS 1.2 Sessions Active (tls12-sessions-open ) |
Liczba aktywnych sesji protokołu TLS 1.2 | .NET 5 |
TLS 1.3 Sessions Active (tls13-sessions-open ) |
Liczba aktywnych sesji protokołu TLS 1.3 | .NET 5 |
TLS Handshake Duration (all-tls-handshake-duration ) |
Średni czas trwania wszystkich uzgadniań protokołu TLS | .NET 5 |
TLS 1.0 Handshake Duration (tls10-handshake-duration ) |
Średni czas trwania uzgadniania protokołu TLS 1.0 | .NET 5 |
TLS 1.1 Handshake Duration (tls11-handshake-duration ) |
Średni czas trwania uzgadniania protokołu TLS 1.1 | .NET 5 |
TLS 1.2 Handshake Duration (tls12-handshake-duration ) |
Średni czas trwania uzgadniania protokołu TLS 1.2 | .NET 5 |
TLS 1.3 Handshake Duration (tls13-handshake-duration ) |
Średni czas trwania uzgadniania protokołu TLS 1.3 | .NET 5 |
Liczniki System.Net.Sockets
Poniższe liczniki śledzą metryki związane z Socket elementami i są mantained w elememetrii SocketsTelemetry.
Licznik | opis | Pierwszy dostępny w programie |
---|---|---|
Outgoing Connections Established (outgoing-connections-established ) |
Całkowita liczba połączeń wychodzących ustanowionych od czasu rozpoczęcia procesu | .NET 5 |
Incoming Connections Established (incoming-connections-established ) |
Łączna liczba nawiązanych połączeń przychodzących od rozpoczęcia procesu | .NET 5 |
Current Outgoing Connect Attempts (current-outgoing-connect-attempts ) |
Bieżąca liczba prób nawiązania połączenia wychodzącego, które zostały uruchomione, ale nie zostały jeszcze zakończone lub zakończyły się niepowodzeniem | .NET 7 |
Bytes Received (bytes-received ) |
Całkowita liczba bajtów odebranych od rozpoczęcia procesu | .NET 5 |
Bytes Sent (bytes-sent ) |
Całkowita liczba bajtów wysłanych od momentu rozpoczęcia procesu | .NET 5 |
Datagrams Received (datagrams-received ) |
Całkowita liczba odebranych datagramów od rozpoczęcia procesu | .NET 5 |
Datagrams Sent (datagrams-sent ) |
Łączna liczba wysłanych datagramów od rozpoczęcia procesu | .NET 5 |