Passer au contenu principal
L’agent autonome AppSignal est disponible sous forme d’image Docker pouvant être exécutée en tant que conteneur dans une infrastructure Docker (Compose) ou Kubernetes. Ce guide suppose que Docker est installé ou qu’il est utilisé par la plateforme d’hébergement de l’application. Pour plus d’informations sur l’installation locale de Docker, consultez le site officiel de Docker. Ce guide vous montre comment configurer l’image Docker AppSignal pour votre application, en utilisant les options de variables d’environnement Docker.

Cas d’utilisation

L’image Docker de l’agent autonome est conçue pour recevoir des données depuis d’autres conteneurs de votre infrastructure. C’est un bon choix pour :
  • Recevoir des métriques StatsD de vos applications (port 8125)
  • Recevoir des données OpenTelemetry de vos applications (port 8099)
  • Collecter des métriques NGINX (port 27649)
Tous ces serveurs sont activés par défaut sur l’image Docker.

Métriques d’hôte

L’image Docker de l’agent autonome ne rapporte pas de métriques d’hôte. Les métriques d’hôte qu’elle rapporterait seraient celles du conteneur lui-même — dans lequel seul l’agent s’exécute — et ne sont donc pas utiles.
Si vous avez besoin d’une surveillance des métriques d’hôte (CPU, mémoire, disque, réseau), utilisez plutôt l’une de ces approches :
  • Machine hôte Docker : installez le paquet Linux directement sur la machine hôte qui exécute vos conteneurs Docker.
  • Kubernetes : utilisez l’intégration Kubernetes pour surveiller les métriques d’hôte dans votre cluster.
  • Conteneurs individuels : si vous n’utilisez pas Kubernetes et avez besoin de surveiller les métriques d’hôte de conteneurs spécifiques, installez le paquet Linux à l’intérieur de chaque conteneur que vous souhaitez surveiller.

Image Docker

Ajoutez un conteneur/service à l’infrastructure de votre application en utilisant l’image Docker appsignal/agent. Si vous souhaitez que des applications lui transmettent des données, comme des métriques StatsD, des données OpenTelemetry et des métriques NGINX, pointez-les vers le nom du conteneur dans l’application.

Plateformes prises en charge

L’image Docker prend en charge les plateformes suivantes. Cette liste peut également être consultée par tag d’image Docker sur la page Docker Hub de cette image.
  • x86 64-bit
  • ARM 64-bit

Configuration

L’agent peut être configuré avec des variables d’environnement spécifiées dans la commande Docker run, les options Docker compose ou la configuration Kubernetes. Dans les exemples ci-dessous, remplacez YOUR_PUSH_API_KEY par votre véritable clé Push API AppSignal et configurez-le avec les détails de votre application. Une liste complète de toutes les options de configuration est disponible dans la section de configuration.

Docker run

# Exemple Docker run
docker run \
  --env APPSIGNAL_PUSH_API_KEY=YOUR_PUSH_API_KEY \
  --env APPSIGNAL_APP_NAME=database-name \
  --env APPSIGNAL_APP_ENV=production \
  --publish "8125:8125" \
  --publish "27649:27649" \
  --publish "8099:8099" \
  appsignal/agent

Docker compose

# Exemple docker-compose.yml
version: "3"

services:
  appsignal: # Nom du conteneur utilisé comme nom d'hôte sur lequel il peut être joint
    image: appsignal/agent
    environment:
      - APPSIGNAL_PUSH_API_KEY=YOUR_PUSH_API_KEY
      - APPSIGNAL_APP_NAME=database-name
      - APPSIGNAL_APP_ENV=production
    ports:
      - "8125:8125" # StatsD
      - "27649:27649" # NGINX
      - "8099:8099" # OpenTelemetry

C’est tout ! Une fois ces étapes terminées, l’image Docker de l’agent autonome AppSignal devrait être opérationnelle et recevoir des données d’autres applications, si elle est configurée à cet effet.