Tous les produits
Search
Centre de documentation

Application Real-Time Monitoring Service:Utiliser l'agent ARMS Golang dans un environnement Function Compute

Dernière mise à jour :Sep 06, 2026

Function Compute (FC) propose un runtime Go intégré compatible avec Application Real-Time Monitoring Service (ARMS). Cette rubrique explique comment intégrer le runtime Go à ARMS.

Contexte

L'intégration de Function Compute à la plateforme ARMS vous permet de surveiller et de tracer vos fonctions. Elle offre une observabilité au niveau des instances, des données Tracing Analysis, des métriques du runtime Go et des données de profilage CPU.

Prérequis

Go version 1.18 ou ultérieure est requise.

Obtenir une clé de licence

Obtenez la clé de licence via OpenAPI. Pour plus d'informations, consultez DescribeTraceLicenseKey - Répertorier les clés de licence.

Méthode 1 : Créer une fonction dans FC à l'aide d'un binaire Go compilé

  1. Compilez votre application Go avec l'agent Go ARMS. Pour plus d'informations, consultez Compiler un binaire Go.

  2. Téléchargez et exécutez le binaire Go compilé dans Function Compute. Pour plus d'informations, consultez Créer une fonction déclenchée par événement.

    Lors de la création de la fonction déclenchée par événement, définissez Runtime sur Go 1 et Code Upload Method sur Upload Code with ZIP Package. Empaquetez le binaire Go compilé localement dans un fichier ZIP, téléchargez le package, puis cliquez sur Create.

  3. Configurez les variables d'environnement.

    ARMS_ENABLE=true
    ARMS_APP_NAME=xxx   # The name of your application.
    ARMS_REGION_ID=xxx   # The region ID of your Alibaba Cloud account.
    ARMS_LICENSE_KEY=xxx   # The license key you obtained.
  4. Une fois la configuration terminée, exécutez la fonction. L'application configurée apparaît sur la page Application Monitoring > Application List de la console ARMS.

    Cliquez sur le nom de l'application. Sur la page Application Overview, vous pouvez consulter les métriques de la fonction, telles que le nombre de requêtes, le nombre d'erreurs et le temps de réponse moyen. Vous pouvez également afficher d'autres données relatives aux appels internes.

    image

Méthode 2 : Générer une application Go à l'aide du FC Application Center

  1. Modifiez les actions dans le fichier s.yaml.

    • L'exemple de code utilise l'URL de téléchargement pour la région Chine (Hangzhou). Remplacez l'URL de téléchargement de l'outil de compilation en fonction de votre système d'exploitation et de votre région. Pour obtenir la liste des URL de téléchargement, consultez Obtenir une URL de téléchargement.

    • Remplacez LicenseKey par la clé de licence que vous avez obtenue.

    edition: 3.0.0
    name: hello-world-app
    access: "{{ access }}"
    
    vars: # Global variables
      region: "{{ region }}"
    
    resources:
      hello_world:
        component: fc3 
        actions:       
          pre-${regex('deploy|local')}: 
            - run: GO111MODULE=on go mod tidy
              path: ./code
            - run: wget "http://arms-apm-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/instgo/instgo-linux-amd64" -O instgo
              path: ./code
            - run: chmod +x instgo
              path: ./code
            - run: GOOS=linux GOARCH=amd64 CGO_ENABLED=0 ./instgo build --licenseKey="{licenseKey}" --cacheDir=./ -- -o target/main main.go
              path: ./code
        props:
          region: ${vars.region}              
          functionName: "{{ functionName }}"
          description: 'hello world by serverless devs'
          runtime: "{{ runtime }}"
          code: ./code/target
          handler: main
          memorySize: 128
          timeout: 10
          # triggers:
          #   - triggerName: httpTrigger # Trigger name
          #     triggerType: http # Trigger type
          #     description: 'xxxx'
          #     qualifier: LATEST # The service version to trigger
          #     triggerConfig:
          #       authType: anonymous # Authentication type. Valid values: anonymous, function
          #       disableURLInternet: false # Specifies whether to disable the public endpoint
          #       methods: # The supported HTTP methods. Valid values: GET, POST, PUT, DELETE, HEAD
          #         - GET
          #         - POST
  2. Dans le FC Application Center, importez l'application depuis un dépôt. Pour plus d'informations, consultez Importer une application.

    Sur la page Create Application, sélectionnez Import an application from a repository. Dans la section Basic Settings, choisissez un type de dépôt tel que GitHub, puis sélectionnez l'utilisateur ou l'organisation du dépôt, le nom du dépôt et la branche du dépôt. Saisissez ensuite le Application Name et la Description. Si Serverless Devs n'a pas encore été autorisé, cliquez d'abord sur Authorize pour lui accorder un accès en lecture au dépôt de code.

  3. Une fois l'application créée, accédez à la page des détails de l'application. Dans la section Resource Information > Function Resources, cliquez sur le nom de la fonction et ajoutez les variables d'environnement suivantes. Pour plus d'informations, consultez Configurer les variables d'environnement.

    ARMS_ENABLE=true
    ARMS_APP_NAME=xxx   # The name of your application.
    ARMS_REGION_ID=xxx   # The region ID of your Alibaba Cloud account.
    ARMS_LICENSE_KEY=xxx   # The license key you obtained.
  4. Démarrez l'application. L'application configurée apparaît sur la page Application Monitoring > Application List de la console ARMS.

    Cliquez sur le nom de l'application. Sur la page Application Overview, vous pouvez consulter des métriques telles que le nombre de requêtes, le nombre d'erreurs et le temps de réponse moyen.

    image.png