- Utilisez les données d’utilisation du processeur et de la mémoire pour mesurer les besoins en ressources des serveurs multijoueurs, afin de calculer correctement le nombre optimal de serveurs de jeu sur une référence SKU (un type) de machine virtuelle spécifique
- Utilisez les compteurs réseau pour détecter un environnement réseau anormal, comme des tentatives d’attaques DDoS ou d’autres congestions réseau
Utilisation
Les métriques de machine virtuelle d’une build peuvent être activées de deux manières, selon la façon dont la build est créée :- Dans Game Manager, vous pouvez cocher la case “Virtual machine metrics” sur la page “New Build”.
- Avec l’API PlayFab Multiplayer Servers, vous pouvez définir la propriété IsEnabled sur TRUE dans les objets d’API suivants.
- InstrumentationConfiguration dans l’appel d’API CreateBuildWithManagedContainer pour une build Windows avec conteneurs
- InstrumentationConfiguration dans l’appel d’API CreateBuildWithProcessBasedServer pour une build Windows basée sur un processus
- LinuxInstrumentationConfiguration dans l’appel d’API CreateBuildWithCustomContainer pour une build Linux
Windows
Sous Windows, la collecte des métriques de machine virtuelle est une fonctionnalité de l’orchestrateur de conteneurs/processus PlayFab existant, appelé VmAgent. VmAgent exécute régulièrement (toutes les 10 secondes) une tâche qui interroge les compteurs de performances système suivants.- Available MBytes
- % Processor Time
- % User Time
- Disk Reads/sec (pour le lecteur D:)
- Disk Writes/sec (pour le lecteur D:)
- Bytes Received/sec
- Bytes Sent/sec
Linux
Sous Linux, nous utilisons l’agent open source telegraf pour collecter et traiter les métriques. Telegraf collecte les métriques toutes les 10 secondes et les envoie à notre agent collecteur interne toutes les 60 secondes. Pour référence, vous pouvez consulter ci-dessous le contenu du fichier de configuration telegraf.conf que nous utilisons. Pour plus de détails, consultez la documentation officielle de telegraf. Nous utilisons également un utilitaire interne appelételegraf-geneva-processor, qui émet la valeur différentielle des métriques de type compteur, comme la métrique net_bytes_recv. L’émission de la valeur différentielle plutôt que de la valeur réelle du compteur permet une meilleure visualisation dans les graphiques fournis par Game Manager.
- cpu_usage_system
- cpu_usage_user
- memory_available_percent
- net_bytes_recv_diff (octets réseau reçus pour eth0)
- net_bytes_sent_diff (octets réseau envoyés pour eth0)
- diskio_reads_diff (nombre de lectures pour sdb)
- diskio_writes_diff (nombre d’écritures pour sdb)
