As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Estatísticas de desempenho em tempo real
O Amazon GameLift Streams coleta estatísticas de desempenho durante as sessões ativas de stream, medindo a utilização de recursos a cada segundo. Use essas estatísticas para monitorar o desempenho do seu aplicativo, identificar gargalos de recursos e otimizar sua experiência de streaming.
As estatísticas de desempenho incluem estatísticas em nível de aplicativo (utilização de CPU e memória para seu aplicativo específico) e estatísticas em nível de sistema (utilização de CPU, memória, GPU e VRAM para a infraestrutura de computação compartilhada).
Você pode receber estatísticas de desempenho de duas formas:
-
Em tempo real durante a sessão: use o Amazon GameLift Streams Web SDK para receber estatísticas à medida que elas são coletadas. Isso permite criar sobreposições de desempenho e monitorar a utilização de recursos à medida que você interage com o aplicativo.
-
Pós-sessão como um arquivo CSV: quando você exporta arquivos de sessão, as estatísticas são incluídas como.
stats/perf_stats_v1.csvIsso fornece um registro completo para análise e depuração pós-sessão.
Receba estatísticas de desempenho
Receba estatísticas em tempo real
Para receber estatísticas de desempenho em seu aplicativo cliente durante uma sessão ativa, defina o SharedWithClient parâmetro como true ao chamar a StartStreamSession API. O Amazon GameLift Streams Web SDK fornece um performanceStats retorno de chamada que é acionado sempre que novas estatísticas chegam da sessão de streaming.
Atenção
Não habilite sessões SharedWithClient de produção com usuários finais. Ative-o somente quando o cliente for confiável, como para depuração e testes internos.
Ao inicializar o Amazon GameLift Streams Web SDK, configure uma função de retorno clientConnection.performanceStats de chamada que receberá estatísticas de desempenho.
const gls = new gameliftstreams.GameLiftStreams({ videoElement: document.getElementById('streamVideoElement'), audioElement: document.getElementById('streamAudioElement'), inputConfiguration: { ... }, clientConnection: { ... performanceStats: (perfStats) => { // Your callback logic here console.log('CPU: ' + perfStats.application.cpuNormalized); console.log('Memory: ' + perfStats.application.memoryMB + ' MB'); console.log('GPU: ' + perfStats.system.gpuPercent + '%'); }, } });
O retorno de chamada recebe um PerformanceStats objeto contendo estatísticas no nível do aplicativo e no nível do sistema. Para obter detalhes sobre a estrutura da interface, consulte a documentação do Amazon GameLift Streams Web SDK na página do produto Getting Started
O console do Amazon GameLift Streams também inclui uma sobreposição de desempenho integrada ao usar o recurso de stream de teste, permitindo que você monitore estatísticas em tempo real sem nenhum trabalho de implementação.
Você pode combinar estatísticas de desempenho com estatísticas do WebRTC fornecidas pelas getAudioRTCStats() funções getVideoRTCStats() e no Amazon Streams Web SDK. GameLift Essa combinação fornece uma visão completa do desempenho do streaming, incluindo estatísticas de rede, taxa de quadros do cliente e utilização de recursos.
Receba estatísticas após a sessão
O Amazon GameLift Streams coleta automaticamente estatísticas de desempenho durante cada sessão de streaming. Quando você exporta arquivos de sessão, as estatísticas são incluídas como stats/perf_stats_v1.csv no arquivo ZIP exportado. Isso fornece um registro completo de todas as estatísticas coletadas durante a sessão para análise e depuração pós-sessão.
Para obter mais informações sobre a exportação de arquivos de sessão, consulteExportar arquivos de sessão de stream.
Referência de estatísticas de desempenho
A tabela a seguir lista todas as estatísticas de desempenho coletadas pelo Amazon GameLift Streams. As estatísticas do aplicativo são específicas da sessão atual, enquanto as estatísticas do sistema compartilhado refletem a utilização total da computação compartilhada por sessões em classes de stream de vários locatários.
Estatísticas normalizadas em classes de stream multilocatário
O Amazon GameLift Streams oferece suporte a classes de stream multilocatário, nas quais várias sessões podem compartilhar a mesma instância de computação. Estatísticas normalizadas (utilização da CPU e da memória do aplicativo) medem o uso de recursos do seu aplicativo em relação ao compartilhamento justo alocado. O compartilhamento justo é calculado dividindo o total de CPU e memória disponíveis na instância de computação uniformemente com base na locação da classe de stream.
Um valor de 1,0 significa que seu aplicativo está usando exatamente sua alocação justa de ações. Valores abaixo de 1,0 indicam que você está usando menos do que sua alocação. Valores superiores a 1,0 indicam sobreutilização, o que pode levar à degradação do desempenho da sua sessão. Em classes de stream multilocatário (locação maior que 1), a sobreutilização também pode afetar outras sessões que compartilham a mesma instância de computação.
Os nomes de estatísticas listados na tabela a seguir são usados como cabeçalhos de coluna CSV no arquivo exportado. Ao receber estatísticas em tempo real por meio do Amazon GameLift Streams Web SDK, essas estatísticas estão disponíveis por meio da PerformanceStats interface com nomes de propriedades em maiúsculas e minúsculas. Para ver a estrutura exata da interface e os nomes das propriedades, consulte o guia de referência da API Amazon GameLift Streams Web SDK na página do produto Getting Started
| Nome da estatística (coluna CSV) | Description | Escopo |
|---|---|---|
timestamp |
Hora em que a medição foi feita, no formato ISO 8601. | Todos |
app_cpu_normalized |
O uso da CPU do aplicativo foi normalizado em relação à alocação justa de compartilhamento, em que 1,0 representa o limite alvo de compartilhamento justo. O uso acima de 1,0 indica sobreutilização, o que pode levar a problemas de desempenho | Aplicação |
app_mem_mb |
Memória total (RAM) usada pelo aplicativo (medida em MiB) | Aplicação |
app_mem_normalized |
O uso de memória do aplicativo foi normalizado em relação à alocação justa de compartilhamento, em que 1,0 representa o limite alvo de compartilhamento justo. O uso acima de 1,0 indica sobreutilização, o que pode levar a problemas de desempenho | Aplicação |
shared_sys_cpu_pct |
Porcentagem do uso total da CPU em toda a computação compartilhada. | Sistema compartilhado |
shared_sys_mem_mb |
Memória total usada na instância (medida em MiB). | Sistema compartilhado |
shared_sys_mem_pct |
Porcentagem da memória total em uso na computação compartilhada. | Sistema compartilhado |
shared_sys_gpu_pct |
Porcentagem da utilização total da GPU na computação compartilhada. | Sistema compartilhado |
shared_sys_vram_mb |
Total de VRAM (memória GPU) usada na computação compartilhada (medida em MiB). | Sistema compartilhado |
shared_sys_vram_pct |
Porcentagem do total de VRAM (memória GPU) em uso na computação compartilhada. | Sistema compartilhado |