Profil Go with Pprof

Profil Go With Pprof



Dans le système d'exploitation Linux, l'écosystème GO propose une grande suite d'outils et de SPI pour diagnostiquer les problèmes de performances et de logique dans le programme GO. L'une des solutions de diagnostic est le profilage GO. La fonction du profilage GO est d'analyser un programme GO en termes de coût, d'utilisation de la mémoire et d'appels de fonction fréquents pour déterminer la section la plus chère du programme. Cette page montre l'utilisation du package pprof pour effectuer le profilage GO en quelques secondes. Ici, nous allons explorer la fonction pprof pour profiler un programme GO. Commençons!

Qu'est-ce qu'un paquet Pprof sous Linux

Le package pprof du système d'exploitation Linux est un outil de profilage utilisé pour écrire les données de profilage d'exécution au format requis à l'aide de l'outil de visualisation pprof. Il sert via un serveur HTTP pour les données de profilage d'exécution, et il est principalement importé pour les effets secondaires de l'enregistrement de ses gestionnaires HTTP. Tous les chemins d'accès de la commande pprof commencent par /debug/pprof/ suivi d'une certaine commande.

Comment installer le package Pprof pour le profilage GO dans le système Ubuntu 22.04

Si vous recherchez un processus d'installation rapide du profilage en go, mais que tout est fastidieux, laissez-nous suivre le processus suivant. Vous devez suivre certaines étapes pour installer le pprof dans le système Ubuntu 22.04. Voici ces étapes :







Tout d'abord, nous devons installer toutes les dépendances afin que le package pprof ne s'arrête pas. Tout d'abord, installez la dépendance Graphviz avec la commande suivante :





Assurez-vous d'utiliser 'sudo' pour donner le privilège root. Sinon, le système pourrait ne pas vous permettre d'installer un package. Voir la sortie suivante :







Maintenant, le système a les dépendances pour le package pprof. Il vous permet d'installer le package pprof. Utilisez la commande 'go get' pour obtenir le pprof de GitHub. Voici la commande :

Si vous n'avez pas la commande 'go' préinstallée, vous devrez l'installer spécifiquement pour pouvoir l'utiliser. Notre système n'avait pas la commande 'go' installée, nous avons donc obtenu le résultat 'commande introuvable'. Voir la sortie suivante :

Installez d'abord le package 'go', puis utilisez-le pour obtenir le package pprof de GitHub. Comme vous pouvez le voir dans la capture d'écran précédente, nous avons trois options différentes pour installer le package 'go', nous pouvons donc utiliser n'importe laquelle d'entre elles. Tous donnent le même résultat avec des fonctionnalités légèrement différentes. Cependant, nous utilisons la commande 'sudo apt install golang-go' pour installer le package 'go' version '2:1.18~0ubuntu2'. Exécutez la commande suivante :

Cela vous permet d'installer le package 'go' ainsi que toutes ses dépendances et bibliothèques pertinentes. Voir la sortie suivante :

Maintenant, allez dans le référentiel GitHub et installez le package pprof. Un package pprof est un outil utilisé pour l'analyse et la visualisation des données de profilage, mais ce n'est pas un produit officiel de Google. C'est pourquoi vous pouvez utiliser le référentiel GitHub et installer manuellement le package pprof avec la commande 'go'. Assurez-vous que votre système répond à tous les besoins des prérequis avant de lancer le 'go install github.com/google/ [e-mail protégé] ' commande. Les prérequis sont un kit de développement « go » d'une version supportée et une application graphviz pour générer la visualisation graphique des profils. L'application Graphviz est facultative, vous pouvez donc l'ignorer si vous le souhaitez. Puisque nous avons installé les deux et préparé une plate-forme pour le package pprof, notre système est prêt à l'installer. Obtenons un accès au référentiel GitHub pour lancer le processus d'installation. Voir la commande suivante :

Cette commande va au 'github.com/google/ [e-mail protégé] ' adresse. Installez les packages pprof à partir du référentiel GitHub. Voir le résultat suivant :

La commande 'go' a téléchargé le package et il est installé successivement dans le système Ubuntu 22.04. Le binaire est installé par défaut à l'emplacement $HOME/go/bin.

Afficher la page du manuel de Pprof

Maintenant, consultez la page de manuel de pprof pour obtenir les détails du package pprof. La page de manuel contient toutes les options du package pprof avec un bref détail de chacune. Cela vous permet de connaître chaque option du pprof et de les utiliser facilement dans vos codes. De plus, chaque fois que vous en avez besoin, vous pouvez vous référer à la page de manuel en utilisant le drapeau –help. Voici comment vous pouvez le faire :

Cela affiche la page de manuel complète sur votre terminal. Jetez un oeil à ce qui suit:

Comme vous pouvez le constater, de nombreuses options sont disponibles pour la commande pprof. Vous pouvez utiliser n'importe lequel d'entre eux pour obtenir les données de profilage formatées requises.

Utiliser Pprof pour profiler les données

Pour utiliser pprof dans votre programme, importez d'abord le package pprof. Utilisez la commande suivante pour importer le package pprof :

Avant de lancer l'importation, assurez-vous que l'application exécute déjà un serveur HTTP. Si vous n'avez pas de serveur d'application HTTP en cours d'exécution, vous devez en démarrer un en ajoutant « net/http » et « log » dans l'importation et ajouter le code suivant :

Maintenant, vous pouvez utiliser la commande pprof pour consulter le profil de tas. La commande suivante est utilisée pour vérifier le profil de tas du http://localhost :

Cela commence à rechercher le profil et tente de se connecter au serveur http. Voir la réponse suivante :

En suivant la même procédure, vous pouvez regarder un profil CPU de 30 secondes, un profil de blocage de goroutine, des détenteurs de mutex en conflit, etc.

Conclusion

Ce manuel est une présentation rapide d'une commande pprof utilisée dans le système d'exploitation Ubuntu 22.04. Nous avons exploré ce qu'est la commande pprof dans le système Linux. Et nous avons appris à l'installer dans notre système Ubuntu 22.04. Nous avons également découvert la variété d'options disponibles pour le package pprof dans le système d'exploitation Linux. La fonction de base du package pprof est de servir via un serveur HTTP pour les données de profilage d'exécution tout en fournissant les données profilées dans un format requis via l'outil de visualisation pprof. Cela vous permet de profiler GO en seulement 30 secondes.