Passer au contenu principal
La gem Ruby AppSignal inclut un outil d’auto-diagnostic qui peut être utilisé pour déboguer l’installation et la configuration de votre intégration AppSignal. C’est l’un des premiers outils que notre équipe de support vous demande d’exécuter lors du débogage d’un problème.

Le rapport de diagnostic

Vous pouvez utiliser cet outil de diagnostic pour tester et valider votre installation AppSignal. Il fournit des informations utiles pour déboguer les problèmes et vérifie si l’agent AppSignal peut s’exécuter sur l’architecture de la machine et communiquer avec les serveurs AppSignal. Cet outil de diagnostic collecte et affiche les éléments suivants :
  • Des informations sur la gem AppSignal.
  • Des informations sur le système hôte et Ruby.
  • Si l’extension et l’agent AppSignal peuvent s’exécuter sur le système hôte.
  • Toutes les options de configuration configurées (y compris les valeurs par défaut).
  • Si la configuration est valide et active.
  • Si la clé Push API est présente et valide (connexion Internet requise).
  • D’où proviennent les valeurs des options de configuration.
  • Si les chemins système requis existent, sont accessibles en écriture, et quels utilisateur et groupe en sont propriétaires.
  • De petites portions de la fin des fichiers journaux disponibles.
Vous pouvez en savoir plus sur l’utilisation de la commande diagnose dans notre documentation Débogage.

Envoi du rapport

Dans les versions de la gem 2.2.0 et supérieures, vous serez invité à envoyer le rapport à AppSignal. Si vous acceptez, le rapport sera envoyé à nos serveurs et vous recevrez un jeton de support. Lorsque vous nous envoyez ce jeton de support, nous examinons le rapport et vous aidons à déboguer le problème. Nous avons constaté que copier-coller la sortie du rapport perd généralement la mise en forme et la rend plus difficile à lire, c’est pourquoi il est envoyé à nos serveurs au format JSON. Dans la version 2.8.0 de la gem, une option a été ajoutée pour consulter le rapport vous-même sur AppSignal.com. Un lien vers le rapport est imprimé dans la sortie diagnose. Cette vue web affichera également tous les problèmes de validation et avertissements détectés par notre système.

Utilisation

Sur la ligne de commande, dans votre projet, exécutez :
appsignal diagnose
Si vous rencontrez un problème en production et avez besoin d’envoyer le rapport à AppSignal pour obtenir de l’aide, vous pouvez exécuter la commande suivante pour générer et envoyer le rapport à nos serveurs :
bundle exec appsignal diagnose --environment=production --send-report

Options

OptionDescription
--environment=<environment>Définit l’environnement à utiliser dans la commande, par exemple production ou staging.
--[no-]send-reportEnvoie automatiquement le rapport, ou ne l’envoie pas.
--[no-]colorActive ou désactive la colorisation de la sortie.

Option d’environnement

Pour sélectionner un environnement spécifique avec la CLI, exécutez la commande ci-dessous :
appsignal diagnose --environment=production
L’option d’environnement est utile lorsqu’il n’y a pas d’environnement par défaut (applications non-Rails et applications configurées avec un fichier de configuration) ou lorsque l’environnement par défaut n’est pas celui que vous voulez diagnostiquer. L’outil diagnose vous avertira si aucun environnement n’est sélectionné.

Option d’envoi du rapport

Les options pour envoyer le rapport immédiatement, ou non, ont été ajoutées à la gem AppSignal version 2.8.0. Choisir d’envoyer ou non le rapport avec ces options ne déclenchera plus cette question, ce qui facilite son utilisation dans les environnements non interactifs. Pour exécuter diagnose et envoyer les données du rapport à AppSignal, exécutez la commande ci-dessous :
appsignal diagnose --send-report
Pour exécuter diagnose sans envoyer les données du rapport à AppSignal, exécutez la commande ci-dessous :
appsignal diagnose --no-send-report

Format de sortie de la configuration

Format des valeurs des options de configuration

Les options de configuration sont affichées dans la CLI sous forme de valeurs inspectées. Cela signifie que nous les affichons comme Ruby le ferait dans une console.
  • Les valeurs de type String sont affichées avec des guillemets doubles autour d’elles, par exemple "My app name".
  • Les valeurs booléennes sont affichées sous leur forme brute : true et false.
  • Les valeurs de type Array sont affichées comme une collection de valeurs entourées de crochets, par exemple ["HTTP_ACCEPT", "HTTP_ACCEPT_CHARSET"].
    • Les tableaux vides sont affichés sous la forme de deux crochets : [].
  • Les valeurs nil sont affichées comme nil.

Sources de configuration

La section de configuration affiche également l’origine des valeurs des options de configuration, ce qui peut aider à identifier les sources qui remplacent les valeurs définies dans d’autres sources de configuration. Vous pouvez en savoir plus sur les sources de configuration, leur ordre de chargement et leur priorité dans la documentation ordre de chargement de la configuration. Les options de configuration sont affichées en fonction de la source de leurs valeurs et du nombre de sources qui les définissent, comme dans l’exemple ci-dessous :
Shell
Configuration
  # Option with a value loaded only from the default source
  send_params: true

  # Option with one source
  # A different source than the default source
  name: "My app name" (Loaded from file)

  # Option with multiple sources
  # Listed in order of priority (highest priority last)
  active: true
    Sources:
      default: false
      file:    false
      env:     true