Métricas disponíveis - Amazon GameLift Servers

Métricas disponíveis

As métricas são classificadas em três categorias:

  • Métricas coletadas automaticamente

  • Métricas fornecidas pelo SDK

  • Métricas personalizadas

Coleta automática de métricas

Nenhuma alteração de código é necessária para essas métricas:

Métricas de instância

Tipo de métrica Descrição Caso de uso
CPU Porcentagem de utilização por instância Monitoramento de recursos
Memória Uso de memória física e porcentagem Planejamento de capacidade
E/S de Rede Bytes e pacotes enviados/recebidos Integridade de conexão
E/S de disco Operações de leitura/gravação e throughput Desempenho de armazenamento

Métricas de frota

Tipo de métrica Descrição Caso de uso
Instâncias Ativas Contagem de instâncias em execução Dimensionamento da frota
Sessões de jogo Sessões ativas e disponíveis Gerenciamento de capacidade
Sessões de jogo interrompidas Sessões de jogo que falharam Monitoramento de erros

Métricas fornecidas pelo SDK

Requer chamadas de função do SDK em seu código:

Métricas de temporização do servidor.

Métrica Descrição Implementação
Horário Delta do Servidor Diferença de tempo entre a marcação atual do servidor e a marcação anterior do servidor. Mede a consistência da taxa de tiques do servidor Chamar GetDeltaTime ()
Taxa de Tiques do Servidor Mostra o número de vezes por segundo em que o servidor está processando atualizações Calculado automaticamente
Tempo de tique do servidor O tempo necessário para o servidor processar um único tique ou atualização Chamar GetTickTime ()
Tempo mundial de tiques do servidor A quantidade de tempo necessário para o servidor atualizar o mundo do jogo a cada tique Chamar GetWorldUpdateTime ()

Implementação: para SDKs independentes de sistema (C++, C#, Go), você implementa essas métricas chamando funções do SDK do seu loop de jogo com valores de tempo calculados. Para plug-ins de mecanismo (Unreal, Unity), essas métricas são capturadas automaticamente por meio da integração do mecanismo.

Métricas de rede

Métrica Descrição Implementação
Conexões O número total de conexões de rede que o servidor estabeleceu Automático após InitMetrics ()
E/S de rede (bytes) O número total de bytes sendo enviados e recebidos pelo servidor na rede Automático após InitMetrics ()
E/S de Rede (Pacotes) O número total de pacotes de rede enviados e recebidos pelo servidor Automático após InitMetrics ()
Perda de Pacotes A porcentagem de pacotes de rede que estão sendo perdidos durante a transmissão Automático após InitMetrics ()

Implementação: integre as chamadas de função do SDK à sua biblioteca de rede. O SDK fornece orientação para diferentes implementações de rede.

Métricas de processo

Métrica Descrição Implementação
Uso da CPU (%) A porcentagem de recursos da CPU que estão sendo utilizados pelo processo do servidor do jogo Automático após InitMetrics ()
Uso de Memória (Unidades) A quantidade total de memória consumida pelos processos do servidor Automático após InitMetrics ()
Uso de Memória Física (%) A porcentagem da memória física total do servidor que está sendo utilizada atualmente Automático após InitMetrics ()
Status do servidor Estado de integridade do servidor de jogos Automático após InitMetrics ()

Implementação: essas métricas são coletadas automaticamente pelo SDK para cada processo de sessão de jogo.

Organização do painel por processo

As métricas por processo estão disponíveis em dois painéis especializados:

  • Painel de desempenho do servidor — Contém horários do servidor (hora delta, taxa de tiques, hora de tiques, hora mundial), métricas de rede (conexões, bytes/pacotes de E/S, perda de pacotes), uso de memória e uso de CPU para sessões de jogo individuais.

  • Painel de Desempenho de Instância — Apresenta as tabelas “N principais sessões de jogo que consomem memória” e “N principais sessões de jogos que consomem CPU” que ajudam a identificar quais processos contribuem mais para o consumo de recursos da instância. Clicar nos links da sessão de jogo permite uma investigação mais profunda das métricas detalhadas.

Casos de uso de métricas por processo

As métricas por processo/por sessão de jogo oferecem suporte aos seguintes cenários de monitoramento:

  • Investigação aprofundada de desempenho — Quando um host/instância tem desempenho degradado devido a processos ou sessões de jogo específicos, as métricas por processo ajudam a identificar qual processo causou o problema por meio das tabelas de sessões de jogo que consomem mais CPU e memória.

  • Investigação de falhas no servidor de jogos — Quando uma sessão de jogo falha, essas métricas ajudam a determinar se a falha ocorreu devido a falta de memória, sobrecarga da CPU ou problemas de largura de banda da rede.

  • Investigue problemas relatados por jogadores — Quando os jogadores relatam atrasos ou interrupções durante o jogo, as métricas por processo ajudam a identificar gargalos na CPU, memória, rede, tempo de ativação ou tempo de atualização mundial.

  • Identifique mudanças de desempenho em diferentes versões — As métricas de hora de tiques, taxa de tiques e tempo de atualização mundial permitem que os desenvolvedores avaliem como o desempenho do jogo muda em diferentes versões de servidores.

  • Detecte atrasos e lentidão na jogabilidade — As métricas de hora de tiques, taxa de tiques e tempo de atualização mundial refletem a rapidez com que o servidor atualiza o jogo, impactando diretamente a experiência do cliente.

  • Avaliação comparativa — identifique como diferentes cenários de jogo afetam o desempenho do servidor com base em fatores como número de jogadores, modo de jogo e outras variáveis.

Organização do painel

As métricas são organizadas em painéis especializados no Amazon Managed Grafana para diferentes cenários de monitoramento. Os painéis disponíveis dependem do tipo de sua frota:

Painéis da Frota do EC2

  • Painel de visão geral da frota do EC2 — Capacidade de frota de alto nível, insights de escalabilidade, jogadores simultâneos (CCU), instâncias, capacidade de jogadores e sessões de jogo interrompidas.

  • Painel de visão geral das instâncias — Métricas agregadas em nível de host em todas as instâncias, incluindo utilização média de CPU, memória, rede e disco.

  • Painel de desempenho da instância — Métricas detalhadas para instâncias individuais com as tabelas “N principais sessões de jogos que consomem memória” e “N principais sessões de jogos que consomem CPU” para identificar processos que consomem muitos recursos.

  • Painel de desempenho do servidor (EC2) — Tempo de loop de jogo, desempenho de rede, memória e métricas de CPU para sessões de jogo individuais em instâncias do EC2.

Painel da frota de contêineres

  • Painel de visão geral da frota de contêineres — Visão geral de alto nível da utilização dos recursos da frota de contêineres, incluindo reserva de CPU, utilização de memória e status do grupo de contêineres.

  • Painel de desempenho de contêineres — métricas detalhadas para contêineres individuais em tarefas específicas do ECS, incluindo utilização de CPU, uso de memória, E/S de rede e desempenho de armazenamento.

  • Painel de desempenho do servidor (Contêineres) — Tempo de loop de jogo, desempenho de rede, memória e métricas de CPU para sessões de jogo individuais em contêineres.

Para obter informações e instruções de uso detalhadas, consulte Uso e organização do painel.