Udostępnij za pośrednictwem


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