EventCounters conhecidos no .NET
O runtime e as bibliotecas do .NET implementam e publicam vários EventCounters que podem ser usados para identificar e diagnosticar diversos problemas de desempenho. Este artigo é uma referência nos provedores que podem ser usados para monitorar esses contadores e as respectivas descrições. Confira a referência de métricas conhecidas se você estiver trabalhando com a API System.Diagnostics.Metrics mais recente do NET.
Contadores System.Runtime
Os contadores a seguir são publicados como parte do runtime do .NET (CoreCLR) e são mantidos no RuntimeEventSource.cs.
Contador | Descrição | Primeiro disponível em |
---|---|---|
% Time in GC since last GC (time-in-gc ) |
A porcentagem de tempo no GC desde o último GC | .NET Core 3.1 |
Allocation Rate (alloc-rate ) |
O número de bytes alocados por intervalo de atualização | .NET Core 3.1 |
CPU Usage (cpu-usage ) |
Porcentagem do uso de CPU do processo em relação a todos os recursos de CPU do sistema | .NET Core 3.1 |
Exception Count (exception-count ) |
O número de exceções que ocorreram | .NET Core 3.1 |
GC Heap Size (gc-heap-size ) |
O número de megabytes considerados alocados com base em GC.GetTotalMemory(Boolean) | .NET Core 3.1 |
Gen 0 GC Count (gen-0-gc-count ) |
O número de vezes que o GC ocorreu para Gen 0 por intervalo de atualização | .NET Core 3.1 |
Gen 0 Size (gen-0-size ) |
O número de bytes para Gen 0 GC | .NET Core 3.1 |
Gen 1 GC Count (gen-1-gc-count ) |
O número de vezes que o GC ocorreu para Gen 1 por intervalo de atualização | .NET Core 3.1 |
Gen 1 Size (gen-1-size ) |
O número de bytes para Gen 1 GC | .NET Core 3.1 |
Gen 2 GC Count (gen-2-gc-count ) |
O número de vezes que o GC ocorreu para Gen 2 por intervalo de atualização | .NET Core 3.1 |
Gen 2 Size (gen-2-size ) |
O número de bytes para Gen 2 GC | .NET Core 3.1 |
LOH Size (loh-size ) |
O número de bytes para o heap de objetos grandes | .NET Core 3.1 |
POH Size (poh-size ) |
O número de bytes para o heap de objetos fixados (disponível no .NET 5 e versões posteriores) | .NET Core 3.1 |
GC Fragmentation (gc-fragmentation ) |
A Fragmentação de Heap do GC (disponível no .NET 5 e versões posteriores) | .NET Core 3.1 |
Monitor Lock Contention Count (monitor-lock-contention-count ) |
O número de vezes em que houve contenção ao tentar realizar o bloqueio do monitoramento, com base em Monitor.LockContentionCount | .NET Core 3.1 |
Number of Active Timers (active-timer-count ) |
O número de instâncias do Timer que estão ativas no momento, com base em Timer.ActiveCount | .NET Core 3.1 |
Number of Assemblies Loaded (assembly-count ) |
O número de instâncias do Assembly carregadas em um processo em um ponto no tempo | .NET Core 3.1 |
ThreadPool Completed Work Item Count (threadpool-completed-items-count ) |
O número de itens de trabalho processados até agora no ThreadPool | .NET Core 3.1 |
ThreadPool Queue Length (threadpool-queue-length ) |
O número de itens de trabalho que estão enfileirados, no momento, para serem processados no ThreadPool | .NET Core 3.1 |
ThreadPool Thread Count (threadpool-thread-count ) |
O número de threads do pool de threads que existem no momento no ThreadPool, com base em ThreadPool.ThreadCount | .NET Core 3.1 |
Working Set (working-set ) |
O número de megabytes de memória física mapeados para o contexto do processo em um ponto no tempo com base em Environment.WorkingSet | .NET Core 3.1 |
IL Bytes Jitted (il-bytes-jitted ) |
O tamanho total de ILs que são compilados por JIT, em bytes | .NET 5 |
Methods Jitted Count (methods-jitted-count ) |
O número de métodos compilados por JIT | .NET 5 |
GC Committed Bytes (gc-committed ) |
O número de bytes confirmados pelo GC | .NET 6 |
Time paused by GC (total-pause-time-by-gc ) |
A quantidade total de tempo de execução do programa foi pausada pelo GC | .NET 8 |
Gen 0 GC Budget (gen-0-gc-budget ) |
O orçamento de memória da Geração 0 | .NET 8 |
Contadores Microsoft.AspNetCore.Hosting
Os contadores a seguir são publicados como parte do ASP.NET Core e são mantidos em HostingEventSource.cs.
Contador | Descrição | Primeiro disponível em |
---|---|---|
Current Requests (current-requests ) |
O número total de solicitações iniciadas, mas ainda não interrompidas | .NET Core 3.1 |
Failed Requests (failed-requests ) |
O número total de solicitações com falha que, ocorreram durante a vida útil do aplicativo | .NET Core 3.1 |
Request Rate (requests-per-second ) |
O número de solicitações que ocorrem por intervalo de atualização | .NET Core 3.1 |
Total Requests (total-requests ) |
O número total de solicitações que, ocorreram durante a vida útil do aplicativo | .NET Core 3.1 |
Contadores Microsoft.AspNetCore.Http.Connections
Os contadores a seguir são publicados como parte do ASP.NET Core SignalR e são mantidos no HttpConnectionsEventSource.cs.
Contador | Descrição | Primeiro disponível em |
---|---|---|
Average Connection Duration (connections-duration ) |
A duração média de uma conexão em milissegundos | .NET Core 3.1 |
Current Connections (current-connections ) |
O número de conexões ativas iniciadas, mas ainda não interrompidas | .NET Core 3.1 |
Total Connections Started (connections-started ) |
O número total de conexões iniciadas | .NET Core 3.1 |
Total Connections Stopped (connections-stopped ) |
O número total de conexões interrompidas | .NET Core 3.1 |
Total Connections Timed Out (connections-timed-out ) |
O número total de conexões que atingiram o tempo limite | .NET Core 3.1 |
Contadores Microsoft-AspNetCore-Server-Kestrel
Os contadores a seguir são publicados como parte do servidor Web do ASP.NET Core Kestrel e são mantidos em KestrelEventSource.cs.
Contador | Descrição | Primeiro disponível em |
---|---|---|
Connection Queue Length (connection-queue-length ) |
O comprimento atual da fila de conexão | .NET 5 |
Connection Rate (connections-per-second ) |
O número de conexões por intervalo de atualização para o servidor Web | .NET 5 |
Current Connections (current-connections ) |
O número atual de conexões ativas com o servidor Web | .NET 5 |
Current TLS Handshakes (current-tls-handshakes ) |
O número atual de handshakes TLS | .NET 5 |
Current Upgraded Requests (WebSockets) (current-upgraded-requests ) |
O número atual de solicitações atualizadas (WebSockets) | .NET 5 |
Failed TLS Handshakes (failed-tls-handshakes ) |
O número total de handshakes TLS com falha | .NET 5 |
Request Queue Length (request-queue-length ) |
O comprimento atual da fila de solicitação | .NET 5 |
TLS Handshake Rate (tls-handshakes-per-second ) |
O número de handshakes TLS por intervalo de atualização | .NET 5 |
Total Connections (total-connections ) |
O número total de conexões com o servidor Web | .NET 5 |
Total TLS Handshakes (total-tls-handshakes ) |
O número total de handshakes TLS com o servidor Web | .NET 5 |
Contadores System.Net.Http
Os contadores a seguir são publicados pela pilha HTTP e são mantidos em HttpTelemetry.AnyOS.cs.
Contador | Descrição | Primeiro disponível em |
---|---|---|
Requests Started (requests-started ) |
O número de solicitações iniciadas desde o início do processo | .NET 5 |
Requests Started Rate (requests-started-rate ) |
O número de solicitações iniciadas por intervalo de atualização | .NET 5 |
Requests Failed (requests-failed ) |
O número de solicitações com falha desde o início do processo | .NET 5 |
Requests Failed Rate (requests-failed-rate ) |
O número de solicitações com falha por intervalo de atualização | .NET 5 |
Current Requests (current-requests ) |
O número atual de solicitações HTTP ativas iniciadas, mas ainda não concluídas ou com falha | .NET 5 |
Current HTTP 1.1 Connections (http11-connections-current-total ) |
O número atual de conexões HTTP 1.1 iniciadas, mas ainda não concluídas ou com falha | .NET 5 |
Current HTTP 2.0 Connections (http20-connections-current-total ) |
O número atual de conexões HTTP 2.0 iniciadas, mas ainda não concluídas ou com falha | .NET 5 |
Current HTTP 3.0 Connections (http30-connections-current-total ) |
O número atual de conexões HTTP 3.0 iniciadas, mas ainda não concluídas ou com falha | .NET 7 |
HTTP 1.1 Requests Queue Duration (http11-requests-queue-duration ) |
A duração média do tempo que as solicitações HTTP 1.1 gastaram na fila de solicitações | .NET 5 |
HTTP 2.0 Requests Queue Duration (http20-requests-queue-duration ) |
A duração média do tempo que as solicitações HTTP 2.0 gastaram na fila de solicitações | .NET 5 |
HTTP 3.0 Requests Queue Duration (http30-requests-queue-duration ) |
A duração média do tempo que as solicitações HTTP 3.0 gastaram na fila de solicitações | .NET 7 |
Contadores System.Net.NameResolution
Os contadores a seguir rastreiam métricas relacionadas a pesquisas de DNS e são mantidos em NameResolutionTelemetry.cs.
Contador | Descrição | Primeiro disponível em |
---|---|---|
DNS Lookups Requested (dns-lookups-requested ) |
O número de pesquisas de DNS solicitadas desde o início do processo | .NET 5 |
Average DNS Lookup Duration (dns-lookups-duration ) |
O tempo médio gasto para uma pesquisa DNS | .NET 5 |
Current DNS Lookups (current-dns-lookups ) |
O número atual de pesquisas de DNS iniciadas, mas ainda não concluídas ou com falha | .NET 6 |
Contadores System.Net.Security
Os contadores a seguir rastreiam métricas relacionadas ao protocolo Transport Layer Security e são mantidos em NetSecurityTelemetry.cs.
Contador | Descrição | Primeiro disponível em |
---|---|---|
TLS handshakes completed (tls-handshake-rate ) |
O número de handshakes TLS concluídos por intervalo de atualização | .NET 5 |
Total TLS handshakes completed (total-tls-handshakes ) |
O número total de handshakes TLS concluídos desde o início do processo | .NET 5 |
Current TLS handshakes (current-tls-handshakes ) |
O número atual de handshakes TLS iniciados, mas ainda não concluídos | .NET 5 |
Total TLS handshakes failed (failed-tls-handshakes ) |
O número total de handshakes TLS com falha desde o início do processo | .NET 5 |
All TLS Sessions Active (all-tls-sessions-open ) |
O número de sessões TLS ativas de qualquer versão | .NET 5 |
TLS 1.0 Sessions Active (tls10-sessions-open ) |
O número de sessões TLS 1.0 ativas | .NET 5 |
TLS 1.1 Sessions Active (tls11-sessions-open ) |
O número de sessões TLS 1.1 ativas | .NET 5 |
TLS 1.2 Sessions Active (tls12-sessions-open ) |
O número de sessões TLS 1.2 ativas | .NET 5 |
TLS 1.3 Sessions Active (tls13-sessions-open ) |
O número de sessões TLS 1.3 ativas | .NET 5 |
TLS Handshake Duration (all-tls-handshake-duration ) |
A duração média de todos os handshakes TLS | .NET 5 |
TLS 1.0 Handshake Duration (tls10-handshake-duration ) |
A duração média dos handshakes TLS 1.0 | .NET 5 |
TLS 1.1 Handshake Duration (tls11-handshake-duration ) |
A duração média dos handshakes TLS 1.1 | .NET 5 |
TLS 1.2 Handshake Duration (tls12-handshake-duration ) |
A duração média dos handshakes TLS 1.2 | .NET 5 |
TLS 1.3 Handshake Duration (tls13-handshake-duration ) |
A duração média dos handshakes TLS 1.3 | .NET 5 |
Contadores System.Net.Sockets
Os contadores a seguir rastreiam métricas relacionadas e Socket são mantidas em SocketsTelemetry.
Contador | Descrição | Primeiro disponível em |
---|---|---|
Outgoing Connections Established (outgoing-connections-established ) |
O número total de conexões de saída estabelecidas desde o início do processo | .NET 5 |
Incoming Connections Established (incoming-connections-established ) |
O número total de conexões de entrada estabelecidas desde o início do processo | .NET 5 |
Current Outgoing Connect Attempts (current-outgoing-connect-attempts ) |
O número atual de tentativas de conexão de saída iniciadas, mas ainda não concluídas ou com falha | .NET 7 |
Bytes Received (bytes-received ) |
O número total de bytes recebidos desde o início do processo | .NET 5 |
Bytes Sent (bytes-sent ) |
O número total de bytes enviados desde o início do processo | .NET 5 |
Datagrams Received (datagrams-received ) |
O número total de datagramas recebidos desde o início do processo | .NET 5 |
Datagrams Sent (datagrams-sent ) |
O número total de datagramas enviados desde o início do processo | .NET 5 |