Analyser les performances de son serveur
Apprenez à utiliser le profiler de FiveM pour analyser les performances de vos ressources et détecter les pics de consommation CPU. Guide via txAdmin, visualisation sur Chrome et export en JSON.
Pré-requis
- Utiliser les dernières versions des artefacts de FiveM (si c'est pour optimiser les ressources)
- Avoir un serveur avec txAdmin ou avec un moyen d'envoyer des commandes (Voir notre guide pour configurer txAdmin ici)
- Utiliser un client FiveM à jour (si c'est pour optimiser les FPS)
- Google Chrome (ou un autre navigateur basé sur Chromium) pour le lire le profiler facilement (sinon nécessite un peu plus de manipulation)
- Laisser le serveur ou le client tourner si vous voulez ouvrir directement le profiler dans le navigateur sans le télécharger
Utilisation
Commande pour capturer un profileur
profiler record <total de frames>
500 est le nombre total de frames recommandé au début, mais il est possible d'en capturer plus ou moins selon vos besoins.
Une frame n'est pas une seconde.
Pour vérifier que le profileur est bien lancé
Voir le message suivant dans la console de votre serveur
Started recording
Via la commande
profiler status
Exemple de sortie quand le profileur est en cours :
Exemple de sortie une fois le profileur terminé :
Ouvrir le profileur directement (Sans avoir à sauvegarder)
Utiliser la commande suivante :
profiler view
Puis cliquez sur le lien qui s'affiche dans la console de votre serveur.
Votre txAdmin doit rester ouvert sans redémarrer pour que le profileur s'affiche. (Sinon il faut télécharger le profileur)
Il est toujours possible de réaliser les étapes suivantes pour sauvegarder le profileur même si vous l'avez ouvert.
Vous pouvez aussi le télécharger directement depuis le navigateur.
Sauvegarder le profileur
Utiliser la commande suivante :
profiler saveJSON <nom du fichier>.json
Puis de télécharger le fichier sur votre ordinateur.
Le fichier sera sauvegardé à la racine du serveur configuré dans txAdmin.
Par défaut, sur ElypseCloud, il se trouve dans le dossier /home/container/
si vous avez importé votre base, sinon
dans un dossier dans /home/container/txData/XXX_XxxxxXXX/
où XXX_XxxxxXXX
est le nom de votre template txAdmin.
Visualiser le profileur via Chrome
- Ouvrir un nouvel onglet dans Chrome
- Ouvrir la console de développement (F12 ou Ctrl + Shift + I)
- Se rendre dans l'onglet
Performance
Où se trouve l'onglet Performance ?S'il n'est pas visible, cliquez sur "Plus d'outils" puis "Performance" OU sur les trois petits points en haut à
- droite de la console de développement OU sur ">>" et "Performance". :::
- Faire un clic droit n'importe où
- Sélectionner "Importer un profil" ou "Load profile"
- Sélectionner le fichier JSON que vous avez téléchargé précédemment
Il est possible d'augmenter la taille de la fenêtre pour mieux visualiser le profileur.
Il faut changer de "Résumé" à "Ascendant" pour voir les temps de chaque resource.
Pic jaunes
Les pics jaunes représentent un pic de consommation CPU.
Il est possible de cliquer un peu avant, maintenir le clic et déplacer la souris vers la droite après le pic jaune pour concentrer les données sur la zone qui vous intéresse.
Voir les informations
Dans la barre "Ascendant", il est possible de voir la consommation de chaque resource. (Ici dans l'exemple, c'est sur une durée de 500 frames)
Il est aussi possible d'obtenir les lignes de code qui consomment le plus de ressources.
oxmysql
ou mysql-async
peuvent consommer beaucoup de ressources CPU, mais cela est normal car elles
sont utilisées par d'autres ressources. Il est donc normal de les voir dans le profileur en haut de la liste.
Si une durée est anormalement élevée, il faut vérifier comment la ressource est utilisée et si elle utilise correctement la resource en question.
🎉 Vous avez désormais toutes les clefs !
Si vous avez des questions, se rendre sur notre Discord.