Une fois l'agent installé pour une application Go, Application Real-Time Monitoring Service (ARMS) commence à la surveiller. Vous pouvez consulter les données de surveillance, telles que la topologie des applications, les piles d'appels et l'analyse SQL. Cette rubrique explique comment installer manuellement l'agent pour une application Go.
Pour les applications déployées dans un environnement Kubernetes, n'installez pas l'agent manuellement. Installez plutôt le composant permettant la connexion à ARMS. Pour plus d'informations, consultez Installation de l'agent Go pour Container Service for Kubernetes (ACK) et Container Compute Service (ACS) à l'aide du composant ack-onepilot.
Si vous avez des questions concernant l'agent Go, contactez-nous via notre groupe de questions-réponses DingTalk (ID : 159215000379).
Prérequis
Vérifiez que votre environnement de compilation peut se connecter à Internet ou au réseau interne d'Alibaba Cloud. Le groupe de sécurité associé à cet environnement doit autoriser le trafic TCP sortant sur les ports 8080, 9990, 80 et 443.
Vérifiez votre environnement réseau. Pour plus d'informations, consultez Configurations réseau pour la surveillance des applications Go.
Vérifiez le système d'exploitation, l'architecture, la version Go et la version du framework de votre environnement de compilation. Pour plus d'informations, consultez Composants et frameworks Go pris en charge par ARMS Application Monitoring.
Instructions
Étape 1 : Compiler l'image de l'application Golang
-
(Facultatif) Si votre projet utilise le mode vendor pour la compilation ou si les paramètres de compilation incluent
-mod=vendor, vérifiez les points suivants :-
Vérifiez si le fichier go.mod contient la dépendance
google.golang.org/protobuf, directement ou indirectement. Si ce n'est pas le cas, suivez les instructions ci-dessous : Vérifiez si les paramètres de compilation incluent
-mod=vendor. Si ce n'est pas le cas, ajoutez-mod=vendoraprèsgo build.
-
-
Utilisez la commande
wgetpour télécharger l'outil de compilation instgo. Sélectionnez l'adresse de téléchargement en fonction de votre environnement de compilation et de la région de votre machine.Notez qu'instgo se met à jour automatiquement lors de la compilation. Enregistrez instgo dans un dossier pour lequel vous disposez des permissions de modification.
RemarqueInstgo est un outil de compilation fourni par ARMS pour les applications Go. Après avoir compilé votre projet Go avec instgo, ARMS peut surveiller votre application.
L'outil de compilation est identique pour toutes les régions. Si votre environnement peut accéder à Object Storage Service (OSS) via Internet, vous pouvez utiliser l'adresse de téléchargement Internet pour la Chine (Hangzhou) correspondant à votre système d'exploitation et à votre architecture.
-
Accordez les permissions d'exécution à l'outil de compilation.
Linux/Mac
# Grant executable permissions chmod +x instgoWindows
Aucune autorisation d'exécution n'est requise sous Windows.
-
Récupérez la LicenseKey et configurez les paramètres de compilation.
ImportantSi vous ignorez cette étape, instgo passe en mode dev et installe par défaut la dernière version de l'agent ARMS. Pour déployer votre application dans un environnement de production, vous devez configurer les paramètres suivants.
-
Récupérez la LicenseKey en appelant l'opération OpenAPI DescribeTraceLicenseKey.
Sur la page DescribeTraceLicenseKey, cliquez sur Debug. Sélectionnez une région et cliquez sur Initiate Call pour obtenir la LicenseKey.

-
Une fois la LicenseKey obtenue, utilisez la commande
setpour configurer les paramètres de compilation.instgo set --licenseKey=${YourLicenseKey}
-
-
Ajoutez
instgocomme préfixe à votre commande de compilation d'origine et exécutez-la.instgo go build {arg1} {arg2} {arg3}Si vous utilisez
go installpour compiler le projet, vous pouvez également ajouterinstgocomme préfixe à la commande. Créez l'image en utilisant le fichier binaire compilé à l'étape précédente.
Étape 2 : Configurer les variables d'environnement
-
Après la compilation, ajoutez manuellement les variables d'environnement suivantes pour votre application Go :
export ARMS_ENABLE=true export ARMS_APP_NAME=xxx # Application name. export ARMS_REGION_ID=xxx # The region ID of your Alibaba Cloud account. export ARMS_LICENSE_KEY=xxx # The LicenseKey obtained in Step 1. -
Vous pouvez également spécifier ces variables au moment de la compilation à l'aide de
ldflags, plutôt que de les exposer viaexport.Remplacez
modulepar le nom du module indiqué dans votre fichier go.mod. Les autres paramètres correspondent aux variables d'environnement listées ci-dessus.instgo go build -ldflags " -X 'github.com/alibaba/loongsuite-go-agent/pkg/exporters.ArmsApmName=${appName}' -X 'github.com/alibaba/loongsuite-go-agent/pkg/exporters.ArmsEnable=true' -X 'github.com/alibaba/loongsuite-go-agent/pkg/exporters.LicenseKey=${licenseKey}' -X 'github.com/alibaba/loongsuite-go-agent/pkg/exporters.RegionId=${regionId}'"
(Facultatif) Référence d'installation Docker
Si vous utilisez un environnement Docker, vous pouvez modifier votre Dockerfile en vous basant sur l'exemple suivant.
### .....
ENV ARMS_ENABLE=true
ENV ARMS_APP_NAME={AppName}
ENV ARMS_REGION_ID={regionId}
ENV ARMS_LICENSE_KEY={licenseKey}
### Add your custom Dockerfile logic below.
### ......
Vérifier les résultats
Au bout d'environ une minute, accédez à la page dans la console ARMS. Si votre application Go s'affiche sur la page et que des données de surveillance sont rapportées, l'agent est correctement installé.
