EventCounters noti in .NET
Il runtime e le librerie .NET implementano e pubblicano diversi EventCounters che possono essere usati per identificare e diagnosticare vari problemi di prestazioni. Questo articolo include informazioni di riferimento sui provider che possono essere usati per monitorare questi contatori e le relative descrizioni. Vedere invece le informazioni di riferimento sulle metriche note se si usa l'API System.Diagnostics.Metrics più recente di NET.
Contatori System.Runtime
I contatori seguenti vengono pubblicati come parte del runtime .NET (CoreCLR) e vengono mantenuti nella RuntimeEventSource.cs.
Contatore | Descrizione | Disponibile per la prima volta in |
---|---|---|
% Time in GC since last GC (time-in-gc ) |
Percentuale di tempo in GC dall'ultima GC | .NET Core 3.1 |
Allocation Rate (alloc-rate ) |
Numero di byte allocati per intervallo di aggiornamento | .NET Core 3.1 |
CPU Usage (cpu-usage ) |
Percentuale dell'utilizzo della CPU del processo rispetto a tutte le risorse della CPU di sistema | .NET Core 3.1 |
Exception Count (exception-count ) |
Numero di eccezioni che si sono verificate | .NET Core 3.1 |
GC Heap Size (gc-heap-size ) |
Numero di megabyte da allocare in base a GC.GetTotalMemory(Boolean) | .NET Core 3.1 |
Gen 0 GC Count (gen-0-gc-count ) |
Numero di volte in cui si è verificato il processo di GC per Gen 0 per ogni intervallo di aggiornamento | .NET Core 3.1 |
Gen 0 Size (gen-0-size ) |
Numero di byte per GC Gen 0 | .NET Core 3.1 |
Gen 1 GC Count (gen-1-gc-count ) |
Numero di volte in cui si è verificato il processo di GC per Gen 1 per ogni intervallo di aggiornamento | .NET Core 3.1 |
Gen 1 Size (gen-1-size ) |
Numero di byte per GC Gen 1 | .NET Core 3.1 |
Gen 2 GC Count (gen-2-gc-count ) |
Numero di volte in cui si è verificato il processo di GC per Gen 2 per ogni intervallo di aggiornamento | .NET Core 3.1 |
Gen 2 Size (gen-2-size ) |
Numero di byte per GC Gen 2 | .NET Core 3.1 |
LOH Size (loh-size ) |
Numero di byte per l'heap degli oggetti di grandi dimensioni | .NET Core 3.1 |
POH Size (poh-size ) |
Numero di byte per l'heap degli oggetti bloccati (disponibile in .NET 5 e versioni successive) | .NET Core 3.1 |
GC Fragmentation (gc-fragmentation ) |
Frammentazione dell'heap GC (disponibile in .NET 5 e versioni successive) | .NET Core 3.1 |
Monitor Lock Contention Count (monitor-lock-contention-count ) |
Numero di volte in cui si è verificata una contesa durante il tentativo di acquisire il blocco del monitoraggio, in base a Monitor.LockContentionCount | .NET Core 3.1 |
Number of Active Timers (active-timer-count ) |
Numero di istanze di Timer attualmente attive, in base a Timer.ActiveCount | .NET Core 3.1 |
Number of Assemblies Loaded (assembly-count ) |
Numero di istanze di Assembly caricate in un processo in un momento specifico | .NET Core 3.1 |
ThreadPool Completed Work Item Count (threadpool-completed-items-count ) |
Numero di elementi di lavoro elaborati fino a questo momento in ThreadPool | .NET Core 3.1 |
ThreadPool Queue Length (threadpool-queue-length ) |
Numero di elementi di lavoro attualmente in coda per l'elaborazione in ThreadPool | .NET Core 3.1 |
ThreadPool Thread Count (threadpool-thread-count ) |
Numero di thread del pool di thread attualmente esistenti in ThreadPool, in base a ThreadPool.ThreadCount | .NET Core 3.1 |
Working Set (working-set ) |
Numero di megabyte di memoria fisica mappata al contesto del processo in un momento specifico in base a Environment.WorkingSet | .NET Core 3.1 |
IL Bytes Jitted (il-bytes-jitted ) |
Dimensioni totali di IL compilati da JIT, in byte | .NET 5 |
Methods Jitted Count (methods-jitted-count ) |
Numero di metodi compilati da JIT | .NET 5 |
GC Committed Bytes (gc-committed ) |
Numero di byte di cui è stato eseguito il commit da GC | .NET 6 |
Time paused by GC (total-pause-time-by-gc ) |
La quantità totale di tempo di esecuzione del programma è stata sospesa dal GC | .NET 8 |
Gen 0 GC Budget (gen-0-gc-budget ) |
Budget per la memoria di generazione 0 | .NET 8 |
Contatori Microsoft.AspNetCore.Hosting
I contatori seguenti vengono pubblicati come parte di ASP.NET Core e vengono mantenuti in HostingEventSource.cs.
Contatore | Descrizione | Disponibile per la prima volta in |
---|---|---|
Current Requests (current-requests ) |
Numero totale di richieste avviate, ma non ancora arrestate | .NET Core 3.1 |
Failed Requests (failed-requests ) |
Numero totale di richieste non riuscite che si sono verificate per la durata dell'app | .NET Core 3.1 |
Request Rate (requests-per-second ) |
Numero di richieste che si verificano per ogni intervallo di aggiornamento | .NET Core 3.1 |
Total Requests (total-requests ) |
Numero totale di richieste non riuscite che si sono verificate per la durata dell'app | .NET Core 3.1 |
Contatori Microsoft.AspNetCore.Http.Connections
I contatori seguenti vengono pubblicati come parte di ASP.NET Core SignalR e vengono mantenuti in HttpConnectionsEventSource.cs.
Contatore | Descrizione | Disponibile per la prima volta in |
---|---|---|
Average Connection Duration (connections-duration ) |
Durata media di una connessione in millisecondi | .NET Core 3.1 |
Current Connections (current-connections ) |
Numero di connessioni attive avviate, ma non ancora arrestate | .NET Core 3.1 |
Total Connections Started (connections-started ) |
Numero totale di connessioni avviate | .NET Core 3.1 |
Total Connections Stopped (connections-stopped ) |
Numero totale di connessioni arrestate | .NET Core 3.1 |
Total Connections Timed Out (connections-timed-out ) |
Numero totale di connessioni con timeout | .NET Core 3.1 |
Contatori Microsoft-AspNetCore-Server-Kestrel
I contatori seguenti vengono pubblicati come parte del server Web ASP.NET Core Kestrel e vengono mantenuti in KestrelEventSource.cs.
Contatore | Descrizione | Disponibile per la prima volta in |
---|---|---|
Connection Queue Length (connection-queue-length ) |
Lunghezza corrente della coda di connessioni | .NET 5 |
Connection Rate (connections-per-second ) |
Numero di connessioni per intervallo di aggiornamento al server Web | .NET 5 |
Current Connections (current-connections ) |
Numero di connessioni attive al server Web | .NET 5 |
Current TLS Handshakes (current-tls-handshakes ) |
Numero corrente di handshake TLS | .NET 5 |
Current Upgraded Requests (WebSockets) (current-upgraded-requests ) |
Numero corrente di richieste aggiornate (WebSockets) | .NET 5 |
Failed TLS Handshakes (failed-tls-handshakes ) |
Numero totale di handshake TLS non riusciti | .NET 5 |
Request Queue Length (request-queue-length ) |
Lunghezza corrente della coda di richieste | .NET 5 |
TLS Handshake Rate (tls-handshakes-per-second ) |
Numero di handshake TLS per intervallo di aggiornamento | .NET 5 |
Total Connections (total-connections ) |
Numero totale di connessioni al server Web | .NET 5 |
Total TLS Handshakes (total-tls-handshakes ) |
Numero totale di handshake TLS con il server Web | .NET 5 |
Contatori System.Net.Http
I contatori seguenti vengono pubblicati dallo stack HTTP e vengono mantenuti in HttpTelemetry.AnyOS.cs.
Contatore | Descrizione | Disponibile per la prima volta in |
---|---|---|
Requests Started (requests-started ) |
Numero di richieste avviate dall'avvio del processo | .NET 5 |
Requests Started Rate (requests-started-rate ) |
Numero di richieste avviate per intervallo di aggiornamento | .NET 5 |
Requests Failed (requests-failed ) |
Numero di richieste non riuscite dall'avvio del processo | .NET 5 |
Requests Failed Rate (requests-failed-rate ) |
Numero di richieste non riuscite per intervallo di aggiornamento | .NET 5 |
Current Requests (current-requests ) |
Numero corrente di richieste HTTP attive avviate ma non ancora completate o non riuscite | .NET 5 |
Current HTTP 1.1 Connections (http11-connections-current-total ) |
Numero corrente di connessioni HTTP 1.1 avviate ma non ancora completate o non riuscite | .NET 5 |
Current HTTP 2.0 Connections (http20-connections-current-total ) |
Numero corrente di connessioni HTTP 2.0 avviate ma non ancora completate o non riuscite | .NET 5 |
Current HTTP 3.0 Connections (http30-connections-current-total ) |
Numero corrente di connessioni HTTP 3.0 avviate ma non ancora completate o non riuscite | .NET 7 |
HTTP 1.1 Requests Queue Duration (http11-requests-queue-duration ) |
Durata media di permanenza delle richieste HTTP 1.1 nella coda delle richieste | .NET 5 |
HTTP 2.0 Requests Queue Duration (http20-requests-queue-duration ) |
Durata media di permanenza delle richieste HTTP 2.0 nella coda delle richieste | .NET 5 |
HTTP 3.0 Requests Queue Duration (http30-requests-queue-duration ) |
Durata media di permanenza delle richieste HTTP 3.0 nella coda delle richieste | .NET 7 |
Contatori System.Net.NameResolution
I contatori seguenti tengono traccia delle metriche correlate alle ricerche DNS e vengono mantenute in NameResolutionTelemetry.cs.
Contatore | Descrizione | Disponibile per la prima volta in |
---|---|---|
DNS Lookups Requested (dns-lookups-requested ) |
Numero di ricerche DNS richieste dall'avvio del processo | .NET 5 |
Average DNS Lookup Duration (dns-lookups-duration ) |
Tempo medio impiegato per una ricerca DNS | .NET 5 |
Current DNS Lookups (current-dns-lookups ) |
Numero corrente di ricerche DNS avviate ma non ancora completate o non riuscite | .NET 6 |
Contatori System.Net.Security
I contatori seguenti tengono traccia delle metriche correlate al protocollo Transport Layer Security e vengono mantenute in NetSecurityTelemetry.cs.
Contatore | Descrizione | Disponibile per la prima volta in |
---|---|---|
TLS handshakes completed (tls-handshake-rate ) |
Numero di handshake TLS completati per intervallo di aggiornamento | .NET 5 |
Total TLS handshakes completed (total-tls-handshakes ) |
Numero totale di handshake TLS completati dall'avvio del processo | .NET 5 |
Current TLS handshakes (current-tls-handshakes ) |
Numero corrente di handshake TLS avviati ma non ancora completati | .NET 5 |
Total TLS handshakes failed (failed-tls-handshakes ) |
Numero totale di handshake TLS completati dall'avvio del processo | .NET 5 |
All TLS Sessions Active (all-tls-sessions-open ) |
Numero di sessioni TLS attive di qualsiasi versione | .NET 5 |
TLS 1.0 Sessions Active (tls10-sessions-open ) |
Numero di sessioni TLS 1.0 attive | .NET 5 |
TLS 1.1 Sessions Active (tls11-sessions-open ) |
Numero di sessioni TLS 1.1 attive | .NET 5 |
TLS 1.2 Sessions Active (tls12-sessions-open ) |
Numero di sessioni TLS 1.2 attive | .NET 5 |
TLS 1.3 Sessions Active (tls13-sessions-open ) |
Numero di sessioni TLS 1.3 attive | .NET 5 |
TLS Handshake Duration (all-tls-handshake-duration ) |
Durata media di tutti gli handshake TLS | .NET 5 |
TLS 1.0 Handshake Duration (tls10-handshake-duration ) |
Durata media degli handshake TLS 1.0 | .NET 5 |
TLS 1.1 Handshake Duration (tls11-handshake-duration ) |
Durata media degli handshake TLS 1.1 | .NET 5 |
TLS 1.2 Handshake Duration (tls12-handshake-duration ) |
Durata media degli handshake TLS 1.2 | .NET 5 |
TLS 1.3 Handshake Duration (tls13-handshake-duration ) |
Durata media degli handshake TLS 1.3 | .NET 5 |
Contatori System.Net.Sockets
I contatori seguenti tengono traccia delle metriche correlate a Socket e vengono mantenute in SocketsTelemetry.
Contatore | Descrizione | Disponibile per la prima volta in |
---|---|---|
Outgoing Connections Established (outgoing-connections-established ) |
Numero totale di connessioni in uscita stabilite dall'avvio del processo | .NET 5 |
Incoming Connections Established (incoming-connections-established ) |
Numero totale di connessioni in ingresso stabilite dall'avvio del processo | .NET 5 |
Current Outgoing Connect Attempts (current-outgoing-connect-attempts ) |
Numero corrente di tentativi di connessione in uscita avviati ma non ancora completati o non riusciti | .NET 7 |
Bytes Received (bytes-received ) |
Numero totale di byte ricevuti dall'avvio del processo | .NET 5 |
Bytes Sent (bytes-sent ) |
Numero totale di byte inviati dall'avvio del processo | .NET 5 |
Datagrams Received (datagrams-received ) |
Numero totale di datagrammi ricevuti dall'avvio del processo | .NET 5 |
Datagrams Sent (datagrams-sent ) |
Numero totale di datagrammi inviati dall'avvio del processo | .NET 5 |