Le problème
Lors de l’exécution de plusieurs applications sur un même hôte, des comportements étranges peuvent se produire. Un problème courant que nous avons rencontré est que des applications commencent à être rapportées sous des noms et/ou des environnements différents. Par exemple, une application qui bascule entre l’environnement de staging et de production après un déploiement ou un redémarrage du processus de l’application ou d’un worker.Contexte
L’agent AppSignal démarre en utilisant la configuration d’une application. Il utilise cette configuration pour envoyer les données aux serveurs AppSignal afin de les rapporter en tant qu’application sur AppSignal.com. Par défaut, AppSignal est configuré en supposant qu’une application s’exécute sur un seul hôte. Si vous exécutez plus d’une application sur un hôte, une configuration est nécessaire pour éviter de partager le répertoire de travail AppSignal entre plusieurs applications. De cette façon, plusieurs agents AppSignal peuvent s’exécuter en même temps avec des configurations d’application différentes.Configuration
Pour permettre à AppSignal d’être utilisé pour plusieurs applications sur un même hôte, nous devons définir l’option de configuration « chemin du répertoire de travail ». À l’aide de cette option de configuration, nous devons définir un chemin de répertoire de travail unique par application pour qu’AppSignal y stocke ses fichiers (temporaires). De cette façon, l’agent AppSignal ne partagera pas le répertoire de travail entre plusieurs applications.Ruby
Pour définir le chemin du répertoire de travail dans l’intégration Ruby, ajoutez ce qui suit à votre fichier de configuration AppSignal. La valeurworking_directory_path est un chemin vers un répertoire existant sur votre système hôte.
En savoir plus
Elixir
Pour définir le chemin du répertoire de travail dans l’intégration Elixir, ajoutez ce qui suit à votre fichier de configuration AppSignal. La valeurworking_directory_path est un chemin vers un répertoire existant sur votre système hôte.
En savoir plus
Node.js
Pour définir le chemin du répertoire de travail dans l’intégration Node.js, ajoutez ce qui suit à votre fichier de configuration AppSignal. La valeurworkingDirectoryPath est un chemin vers un répertoire existant sur votre système hôte.
En savoir plus
Python
Pour l’intégration Python, deux options de configuration doivent être modifiées. La première est l’option de configurationworking_directory_path, et l’autre l’option opentelemetry_port.
Pour définir ces options de configuration dans l’intégration Python, ajoutez ce qui suit à votre fichier de configuration AppSignal. La valeur opentelemetry_port est un numéro de port disponible et la valeur working_directory_path est un chemin vers un répertoire existant sur votre système hôte. Ces valeurs doivent être uniques par application.
En savoir plus
- Détails de l’option de configuration
opentelemetry_portde l’intégration Python - Détails de l’option de configuration
working_directory_pathde l’intégration Python