Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Metriche disponibili
Le metriche si dividono in tre categorie:
-
Metriche raccolte automaticamente
-
Metriche fornite da SDK
-
parametri personalizzati
Raccolta automatica di metriche
Non sono necessarie modifiche al codice per queste metriche:
Parametri dell'istanza
| Tipo di metrica | Description | Caso d'uso |
|---|---|---|
| CPU | Percentuale di utilizzo per istanza | Monitoraggio delle risorse |
| Memoria | Utilizzo e percentuale della memoria fisica | Pianificazione della capacità |
| I/O di rete | Byte e pacchetti inviati/ricevuti | Stato della connessione |
| I/O del disco | Operazioni e velocità effettiva di lettura/scrittura | Prestazioni di archiviazione |
Metriche della flotta
| Tipo di metrica | Description | Caso d'uso |
|---|---|---|
| Istanze attive | Conteggio delle istanze in esecuzione | Scalabilità del parco veicoli |
| Sessioni di gioco | Sessioni attive e disponibili | Gestione della capacità |
| Sessioni di gioco interrotte | Sessioni di gioco che si sono bloccate | Monitoraggio degli errori |
Metriche fornite dall'SDK
Richiede chiamate alle funzioni SDK nel codice:
Metriche di temporizzazione del server
| Metrica | Description | Implementazione |
|---|---|---|
| Delta Time del server | Differenza di tempo tra il segno di spunta corrente del server e il segno di spunta del server precedente. Misura la coerenza del tick rate del server | Chiama GetDeltaTime () |
| Tick Rate del server | Mostra il numero di volte al secondo in cui il server elabora gli aggiornamenti | Calcolato automaticamente |
| Orario di selezione del server | Il tempo impiegato dal server per elaborare un singolo segno di spunta o aggiornamento | Chiama GetTickTime () |
| Server World Tick Time | Il tempo impiegato dal server per aggiornare il mondo di gioco con ogni segno di spunta | Chiama GetWorldUpdateTime () |
Implementazione: per chi è indipendente dal motore SDKs (C++, C#, Go), implementa queste metriche richiamando le funzioni SDK dal loop di gioco con valori di temporizzazione calcolati. Per i plugin del motore (Unreal, Unity), queste metriche vengono acquisite automaticamente tramite l'integrazione del motore.
Metriche di rete
| Metrica | Description | Implementazione |
|---|---|---|
| Connessioni | Il numero totale di connessioni di rete stabilite dal server | Automatico dopo InitMetrics () |
| Rete I/O (byte) | Il numero totale di byte inviati e ricevuti dal server sulla rete | Automatico dopo InitMetrics () |
| Rete I/O (pacchetti) | Il numero totale di pacchetti di rete inviati e ricevuti dal server | Automatico dopo InitMetrics () |
| Perdita di pacchetti | La percentuale di pacchetti di rete che vengono persi durante la trasmissione | Automatico dopo InitMetrics () |
Implementazione: integra le chiamate alle funzioni SDK con la tua libreria di rete. L'SDK fornisce indicazioni per diverse implementazioni di rete.
Parametri di elaborazione
| Metrica | Description | Implementazione |
|---|---|---|
| Utilizzo della CPU (%) | La percentuale di risorse della CPU utilizzate dal processo del server di gioco | Automatico dopo InitMetrics () |
| Utilizzo della memoria (unità) | La quantità totale di memoria consumata dai processi del server | Automatico dopo InitMetrics () |
| Utilizzo della memoria fisica (%) | La percentuale della memoria fisica totale del server attualmente utilizzata | Automatico dopo InitMetrics () |
| Stato del server | Stato di integrità del server di gioco | Automatico dopo InitMetrics () |
Implementazione: queste metriche vengono raccolte automaticamente dall'SDK per ogni processo di sessione di gioco.
Organizzazione del pannello di controllo per processo
Le metriche per processo sono disponibili in due dashboard specializzati:
-
Dashboard delle prestazioni del server: contiene gli orari del server (delta time, tick rate, tick time, world tick time), le metriche di rete (connessioni, I/O byte/pacchetti, perdita di pacchetti), l'utilizzo della memoria e l'utilizzo della CPU per le singole sessioni di gioco.
-
Dashboard delle prestazioni dell'istanza: include le tabelle «Le migliori N sessioni di gioco che consumano la memoria» e le «N sessioni di gioco che consumano più CPU» che aiutano a identificare i processi che contribuiscono maggiormente al consumo di risorse dell'istanza. Facendo clic sui collegamenti alle sessioni di gioco è possibile eseguire un'analisi più approfondita delle metriche dettagliate.
Casi d'uso delle metriche per processo
Le per-game-session metriche per processo/ supportano i seguenti scenari di monitoraggio:
-
Analisi approfondita delle prestazioni: quando le prestazioni di a sono peggiorate a causa di processi o sessioni di gioco specifici, le metriche per processo aiutano a identificare quale processo host/instance ha causato il problema nelle tabelle delle sessioni di gioco che consumano più CPU e memoria.
-
Indagine sugli arresti anomali di un server di gioco: quando una sessione di gioco si blocca, queste metriche aiutano a determinare se l'arresto è dovuto a esaurimento della memoria, sovraccarico della CPU o problemi di larghezza di banda della rete.
-
Analizza i problemi segnalati dai giocatori: quando i giocatori segnalano ritardi o interruzioni durante il gioco, le metriche basate sui singoli processi aiutano a identificare i punti deboli nella CPU, nella memoria, nella rete, nel tempo di tick o nel tempo di aggiornamento globale.
-
Identifica le variazioni delle prestazioni nelle diverse build: le metriche relative al tempo di tick, alla frequenza di tick e al tempo di aggiornamento mondiale consentono agli sviluppatori di misurare come cambiano le prestazioni di gioco su diverse build di server.
-
Rileva ritardi e rallentamenti nel gameplay: le metriche relative al tempo di tick, alla frequenza di tick e al tempo di aggiornamento mondiale riflettono la velocità con cui il server aggiorna il gioco, con un impatto diretto sull'esperienza del cliente.
-
Analisi comparativa: identifica in che modo i diversi scenari di gioco influiscono sulle prestazioni del server in base a fattori come il numero di giocatori, la modalità di gioco e altre variabili.
Organizzazione del pannello di controllo
Le metriche sono organizzate in dashboard specializzate in Amazon Managed Grafana per diversi scenari di monitoraggio. Le dashboard disponibili dipendono dal tipo di flotta:
EC2 Dashboard della flotta
-
EC2 Dashboard panoramica della flotta: capacità della flotta di alto livello, informazioni sulla scalabilità, giocatori simultanei (CCU), istanze, capacità dei giocatori e sessioni di gioco interrotte.
-
Dashboard di panoramica delle istanze: metriche aggregate a livello di host per tutte le istanze, tra cui l'utilizzo medio di CPU, memoria, rete e disco.
-
Dashboard delle prestazioni delle istanze: metriche dettagliate per le singole istanze con le tabelle «Le migliori N sessioni di gioco che consumano memoria» e «Le N sessioni di gioco che consumano più CPU» per identificare i processi che richiedono molte risorse.
-
Dashboard delle prestazioni del server (EC2): tempistica dei loop di gioco, prestazioni di rete, memoria e parametri della CPU per le singole sessioni di gioco su istanze. EC2
Dashboard Container Fleet
-
Dashboard di panoramica sulla flotta di container: panoramica di alto livello sull'utilizzo delle risorse della flotta di container, inclusa la prenotazione della CPU, l'utilizzo della memoria e lo stato del gruppo di container.
-
Dashboard delle prestazioni dei container: metriche dettagliate per i singoli contenitori nell'ambito di attività ECS specifiche, tra cui utilizzo della CPU, utilizzo della memoria, I/O di rete e prestazioni di archiviazione.
-
Dashboard delle prestazioni del server (Container): tempistica dei loop di gioco, prestazioni di rete, memoria e parametri della CPU per le singole sessioni di gioco in contenitori.
Per informazioni dettagliate sulla dashboard e istruzioni per l'uso, consulta. Organizzazione e utilizzo del pannello di controllo