Sommaire
- Premiers pas
- Bibliothèques AppSignal
- Quels langages de programmation AppSignal prend-il en charge ?
- Filtrer les données
- Comment ignorer les actions dans mon application ?
- Comment ignorer les erreurs dans mon application ?
- Comment filtrer les données envoyées à AppSignal ?
- Quelle syntaxe regex ignore_logs prend-il en charge ?
- Comment supprimer les logs envoyés par appsignal-wrap ?
- Pourquoi les requêtes d’Uptime monitoring comptent-elles dans mon budget, et comment les exclure ?
- Comment ignorer un message d’erreur spécifique dans le front-end JavaScript ?
- Comment acheminer le trafic de l’agent AppSignal via un proxy HTTP ?
- Comment ajouter une instrumentation supplémentaire à mon application ?
- Quelle est la différence entre setRootName et setName ?
- Comment exécuter plusieurs applications sur un même hôte ?
- Quels systèmes d’exploitation AppSignal prend-il en charge ?
- Comment déboguer un problème avec l’intégration AppSignal ?
- AppSignal prend-il en charge Windows ?
- Pourquoi l’installation de la gem AppSignal Ruby échoue-t-elle avec une erreur JSON::Fragment ?
- Comment configurer AppSignal dans une application Hanami ?
- Pourquoi les erreurs dans Phoenix LiveComponent ne sont-elles pas capturées par AppSignal ?
- Compte utilisateur
- Puis-je envoyer des notifications par e-mail à un membre spécifique de l’équipe ?
- Comment activer l’authentification à deux facteurs (2FA) pour l’application AppSignal ?
- Pourquoi mes codes d’authentification à deux facteurs (2FA) ne fonctionnent-ils pas ?
- Comment réenregistrer mon appareil d’authentification à deux facteurs ?
- Quelles adresses IP AppSignal utilise-t-il ?
- Erreurs et performances
- Pourquoi mon problème de performance est-il toujours marqué comme fermé ?
- Comment voir le nombre d’erreurs par namespace ?
- Pendant combien de temps les données d’Uptime monitoring sont-elles conservées ?
- Comment trouver la cause des requêtes API lentes ?
- Comment modifier la stratégie de regroupement des erreurs front-end ?
- Comment rechercher des erreurs par message ?
- Comment recevoir les notifications d’anomalie via webhook ?
- Pourquoi mon application Elixir affiche-t-elle un pic soudain d’utilisation des requêtes ?
Premiers pas
J’ai besoin d’aide pour démarrer. Où commencer ?
Si vous découvrez AppSignal ou souhaitez en savoir plus sur la configuration des fonctionnalités d’AppSignal, veuillez lire nos guidesBibliothèques AppSignal
Quels langages de programmation AppSignal prend-il en charge ?
AppSignal prend en charge les langages de programmation Node.js, Ruby et Elixir. Nous proposons également des packages JavaScript pour capturer les erreurs côté client dans les navigateurs pris en charge.Filtrer les données
Comment ignorer les actions dans mon application ?
Vous pouvez ignorer des actions pour cesser d’enregistrer les données de certaines actions, requêtes, background jobs, etc.Comment ignorer les erreurs dans mon application ?
Vous pouvez ignorer des erreurs (en fonction de leur nom) pour empêcher AppSignal de les signaler et de vous alerter.Comment filtrer les données envoyées à AppSignal ?
Pour découvrir comment filtrer les données envoyées à AppSignal, consultez l’un des guides suivants :- Filtrer les paramètres de requête et les arguments des background jobs
- Filtrer les données de session pour les requêtes HTTP
- Filtrer les en-têtes de requête HTTP
Quelle syntaxe regex ignore_logs prend-il en charge ?
ignore_logs prend en charge un sous-ensemble limité de la syntaxe des expressions régulières : ^ (début de chaîne), $ (fin de chaîne) et .* (joker). Les constructions regex complètes telles que les classes de caractères ([.]) ne sont pas valides et sont silencieusement ignorées.
Pour faire correspondre une ligne de log exacte, encadrez-la avec ^ et $. Pour faire correspondre un préfixe, utilisez ^ suivi du texte littéral. Pour faire correspondre n’importe où dans le message, utilisez .* autour de celui-ci.
Consultez le guide ignore logs pour la référence complète de la syntaxe.
Pourquoi les requêtes d’Uptime monitoring comptent-elles dans mon budget, et comment les exclure ?
Les moniteurs d’Uptime monitoring interrogent votre endpoint selon un calendrier régulier, et si AppSignal est installé, ces requêtes sont comptabilisées comme des transactions dans votre budget mensuel de requêtes. Pour qu’elles cessent d’être comptabilisées, ajoutez l’action de health-check àignore_actions dans votre configuration AppSignal — AppSignal cesse alors totalement d’enregistrer ces transactions.
Pour Ruby :
ignore_actions dans appsignal.py :
Comment ignorer un message d’erreur spécifique dans le front-end JavaScript ?
Pour ignorer les erreurs correspondant à un modèle de message spécifique dans l’intégration JavaScript AppSignal, passez un tableauignoreErrors lors de l’initialisation d’Appsignal. Chaque élément du tableau est une expression régulière comparée au message d’erreur.
ignoreErrors ne sont pas envoyées à AppSignal. Les autres erreurs de la même classe continuent d’être signalées. Consultez les options de configuration front-end pour la liste complète des options d’initialisation.
Comment supprimer les logs envoyés par appsignal-wrap ?
appsignal-wrap transfère par défaut stdout et stderr vers AppSignal. L’option de configuration ignore_logs ne s’applique pas à appsignal-wrap.
Pour supprimer la sortie, passez --no-stdout et/ou --no-stderr à la commande appsignal-wrap :
appsignal-wrap pour la liste complète des options.
Comment acheminer le trafic de l’agent AppSignal via un proxy HTTP ?
Définissez l’option de configurationhttp_proxy (ou la variable d’environnement APPSIGNAL_HTTP_PROXY) sur l’adresse complète de votre proxy. L’agent AppSignal achemine tout le trafic sortant — transactions, erreurs, métriques et logs — via ce proxy.
Pour Ruby :
httpProxy dans votre configuration :
Comment ajouter une instrumentation supplémentaire à mon application ?
Une instrumentation supplémentaire peut être ajoutée à votre application pour vous donner plus de visibilité sur ses performances en mesurant la durée d’événements distincts. Découvrez comment dans la documentation de notre Ruby Gem et de notre package Elixir.Quelle est la différence entre setRootName et setName ?
setName et setRootName renomment tous deux les spans, mais à des niveaux différents. setName définit le nom d’un span individuel tel qu’il apparaît dans la chronologie de l’échantillon de performance, tandis que setRootName définit le nom de la transaction racine — ce que vous voyez dans la vue d’ensemble des performances et la liste des transactions.
Un bon modèle consiste à appeler setRootName une fois sur votre gestionnaire le plus externe (par exemple, `${request.method} ${pattern}` pour produire un titre comme GET /users/:id), et à utiliser setName avec setCategory sur les spans internes tels que les middlewares, les loaders et les actions, afin qu’ils apparaissent comme des événements clairement étiquetés dans la décomposition de la chronologie.
Pour en savoir plus sur le nommage et l’ajout de spans, consultez le guide d’instrumentation Node.js.
Comment exécuter plusieurs applications sur un même hôte ?
Par défaut, AppSignal est configuré en supposant qu’une seule application s’exécute sur un hôte. Si vous exécutez plusieurs applications sur un même hôte, des comportements inattendus peuvent survenir, comme des données rapportées pour une autre application. Pour configurer AppSignal pour plusieurs applications sur un même hôte, le répertoire de travail d’AppSignal doit être configuré. Pour en savoir plus sur la configuration du répertoire de travail, consultez notre guide pour exécuter plusieurs applications sur un même hôteQuels systèmes d’exploitation AppSignal prend-il en charge ?
Veuillez consulter notre page Systèmes d’exploitation pour la liste complète des systèmes d’exploitation pris en charge et des packages requis.Comment déboguer un problème avec l’intégration AppSignal ?
Veuillez consulter notre guide de débogage pour un guide complet sur le débogage des problèmes d’intégration AppSignal. Vous pouvez également consulter notre page Problèmes connus pour les problèmes susceptibles d’être présents dans votre version de l’intégration AppSignal.AppSignal prend-il en charge Windows ?
AppSignal ne prend pas en charge Windows, et il n’est pas prévu d’ajouter la prise en charge de Windows. Cependant, nous nous efforçons de rendre les bibliothèques AppSignal installables sur Microsoft Windows sans erreurs ni problèmes de compilation.Pourquoi l’installation de la gem AppSignal Ruby échoue-t-elle avec une erreur JSON::Fragment ?
Cette erreur se produit lors de l’installation d’appsignal 4.x avec Ruby 3.0 et versions antérieures. La gem json incluse comme dépendance dans AppSignal 4.x a introduit JSON::Fragment, une constante uniquement disponible à partir de Ruby 3.1. Sur les versions plus anciennes de Ruby, la compilation de l’extension native échoue avec :
gem "appsignal", "~> 3.0" à votre Gemfile et exécutez bundle update appsignal. AppSignal 3.x fonctionne avec Ruby 2.7 et Ruby 3.0, mais ne reçoit pas les nouvelles fonctionnalités de la branche 4.x, alors prévoyez de mettre à niveau Ruby dès que possible.
Comment configurer AppSignal dans une application Hanami ?
AppSignal ne se configure pas automatiquement dans Hanami comme il le fait dans Rails. Utilisez un fichier de configuration Ruby (config/appsignal.rb) plutôt que l’ancien fichier YAML (config/appsignal.yml) — le format YAML est obsolète et sera supprimé dans la prochaine version majeure de la gem.
Créez config/appsignal.rb avec :
config.ru charge l’intégration après Hanami :
config/appsignal.yml existant, supprimez-le ou ajoutez une section development avec active: true — la présence des deux fichiers provoque des conflits. AppSignal ne démarre pas dans l’environnement development par défaut ; activate_if_environment l’active explicitement.
Consultez la documentation d’intégration Hanami pour la configuration complète.
Pourquoi les erreurs dans Phoenix LiveComponent ne sont-elles pas capturées par AppSignal ?
AppSignal capture les erreurs Phoenix en écoutant les événements de télémétrie de Phoenix. Lorsqu’un LiveComponent gère directement des événements de formulaire, Phoenix utilise un chemin interne qui n’émet pas ces événements de télémétrie, de sorte que l’erreur n’est jamais signalée. Pour signaler les erreurs depuis un LiveComponent, utilisezAppsignal.send_error/2 pour les envoyer manuellement :
handle_event/3 ou update/2, où la télémétrie de Phoenix s’active.
Cette lacune a été corrigée en amont dans phoenix_live_view. Mettre à jour vers la dernière version permet à AppSignal de capturer ces erreurs automatiquement.
Compte utilisateur
Puis-je envoyer des notifications par e-mail à un membre spécifique de l’équipe ?
Les notifications par e-mail ne peuvent pas être envoyées à un membre spécifique de l’équipe. Chaque membre gère ses propres préférences de notification. Pour les mettre à jour, allez dans Account Settings → Email Settings et activez ou désactivez les notifications pour chaque application. Consultez paramètres de notification pour les options disponibles.Comment activer l’authentification à deux facteurs (2FA) pour l’application AppSignal ?
Veuillez consulter notre page Authentification à deux facteurs pour plus d’informations sur l’activation de la 2FA.Pourquoi mes codes d’authentification à deux facteurs (2FA) ne fonctionnent-ils pas ?
Si les codes de votre application d’authentification sont rejetés lors de la connexion, la cause la plus fréquente est un décalage d’horloge sur l’appareil qui les génère. Les codes d’authentification à deux facteurs sont basés sur le temps (TOTP), donc l’horloge de cet appareil doit être précise — cela se rompt souvent après un changement de fuseau horaire. Activez la date et l’heure automatiques (par le réseau) sur l’appareil, puis essayez le code nouvellement généré. Si vous ne parvenez toujours pas à vous connecter, utilisez l’un des cinq codes de récupération que vous avez sauvegardés lors de l’activation de la 2FA pour contourner l’authentification à deux facteurs. Consultez Authentification à deux facteurs pour en savoir plus sur les codes de récupération.Comment réenregistrer mon appareil d’authentification à deux facteurs ?
Pour configurer la 2FA sur une nouvelle application d’authentification ou un nouvel appareil, allez dans Account Settings → Security → Two-factor authentication, désactivez la 2FA, puis réactivez-la. Un nouveau QR code apparaît pour que vous le scanniez avec votre application d’authentification. Pour accéder à l’option de désactivation, vous devez d’abord vous authentifier avec un code actuel ou un code de récupération. Consultez Authentification à deux facteurs pour les instructions de configuration complètes.Quelles adresses IP AppSignal utilise-t-il ?
Actuellement, l’AppSignal Push API utilise les adresses IP suivantes :Erreurs et performances
Pourquoi mon problème de performance est-il toujours marqué comme fermé ?
Le statut Ouvert ou Fermé d’un problème est déterminé par ses paramètres de notification, et non par le fait que le problème sous-jacent se produise toujours. AppSignal marque un problème comme Ouvert lorsqu’il envoie une notification à son sujet. Les problèmes de performance utilisent par défaut le paramètre « Ne jamais notifier », aucune notification n’est donc envoyée — c’est pourquoi ils restent Fermés. Pour qu’un problème de performance s’ouvre lors de nouvelles occurrences, modifiez son paramètre de notification, soit par problème, soit en mettant à jour la valeur par défaut au niveau de votre organisation. Consultez Paramètres de notification pour savoir comment le configurer.Comment voir le nombre d’erreurs par namespace ?
Pour voir le nombre d’erreurs par namespace, créez un graphique Number qui utilise la métriquetransaction_exception_count (le décompte par AppSignal des erreurs enregistrées dans une application), filtré par le tag namespace :
- Ouvrez l’application que vous souhaitez mesurer, accédez à Dashboards et ajoutez un nouveau graphique.
- Sélectionnez l’onglet Number.
- Définissez la métrique sur
transaction_exception_count. - Ajoutez le tag namespace et saisissez le nom du namespace (par exemple,
weboubackground). - Définissez le type d’agrégation sur Total value.
- Créez le graphique.
Pendant combien de temps les données d’Uptime monitoring sont-elles conservées ?
Uptime monitoring stocke les métriques à la minute pendant 30 jours et les métriques horaires pendant 5 ans. Pour visualiser les tendances de disponibilité quotidiennes sur une période plus longue — par exemple, une année complète — utilisez le sélecteur de dates dans la vue Uptime monitoring pour sélectionner une plage de dates personnalisée.Comment trouver la cause des requêtes API lentes ?
Commencez par Performance → Slow API requests. Les requêtes sont triées par impact — la combinaison de la durée et de la fréquence — donc les premières entrées sont les plus probablement responsables. La sélection d’une requête affiche sa durée moyenne, son graphique de temps de réponse, son throughput et la liste des actions qui la contiennent. Pour les requêtes de base de données, consultez Performance → Slow queries. Chaque requête est triée par impact, et en sélectionner une montre quelles actions la déclenchent. Pour trouver les requêtes N+1, ouvrez Performance → Issue list. Les actions marquées du tagN+1 contiennent des appels répétés à la base de données. Ouvrez un échantillon et consultez la chronologie de performance — les événements marqués x2, x5, etc. indiquent que la même requête est répétée au sein d’une seule requête.
Pour une procédure pas à pas guidée, consultez Trouver les requêtes de base de données lentes et Trouver les requêtes HTTP lentes.
Comment modifier la stratégie de regroupement des erreurs front-end ?
Par défaut, AppSignal regroupe les erreurs front-end par nom d’erreur. Lorsque plusieurs erreurs non capturées partagent un nom générique, elles fusionnent en un seul problème même si leurs messages et leurs stack traces diffèrent. Pour séparer les erreurs front-end trop regroupées en fonction de leur origine dans votre code, allez sur la page Settings de votre application et définissez Front-end error grouping strategy sur Relevant backtrace line strategy. Cela regroupe les erreurs par la première ligne de votre propre code dans le backtrace au lieu du nom de l’erreur. Pour que cela fonctionne, chargez les source maps de votre application — sans elles, AppSignal ne peut pas résoudre le backtrace vers vos fichiers source. Consultez Front-end source maps pour savoir comment les configurer. Vous avez besoin d’un accès owner sur l’organisation pour modifier ce paramètre. Si l’option n’est pas visible, demandez à un owner d’effectuer le changement.Comment rechercher des erreurs par message ?
Pour rechercher des erreurs par leur texte de message, utilisez la balisemessage: dans la barre de recherche AppSignal. Par exemple, saisir message:"could not connect" renvoie tous les échantillons d’erreurs dont le message d’erreur contient cette expression. La barre de recherche apparaît dans l’en-tête du dashboard AppSignal.
Comment recevoir les notifications d’anomalie via webhook ?
Les notifications d’anomalie via webhook sont configurées sur le trigger d’anomalie, et non sur l’écran des paramètres de webhook. Créez ou modifiez un trigger d’anomalie, faites défiler jusqu’à Notify me through, et sélectionnez le webhook que vous avez configuré dans AppSignal. L’écran des paramètres de webhook ne répertorie que les événements Deploys, Errors et Performance — la connexion pour les anomalies se trouve sur le trigger lui-même. Consultez Triggers Anomaly detection pour savoir comment configurer et modifier les triggers.Pourquoi mon application Elixir affiche-t-elle un pic soudain d’utilisation des requêtes ?
Un pic soudain d’utilisation des requêtes après un déploiement est souvent causé par un grand nombre d’erreurs générées par votre application. Les erreurs comptent comme des requêtes dans AppSignal. Si le throughput d’erreurs affiché dans votre dashboard semble bien inférieur à l’augmentation du nombre de requêtes, il se peut que vous utilisiez une version plus ancienne de l’intégration Elixir AppSignal. Dans les versions plus anciennes, seules les erreurs échantillonnées apparaissent dans les métriques de throughput d’erreurs, mais toutes les requêtes d’erreur comptent dans votre utilisation totale des requêtes. Cet écart fait paraître le pic plus important que ne le suggère le nombre d’erreurs. Pour résoudre cet écart, mettez à jour le package Elixirappsignal vers la dernière version. Après la mise à jour, les métriques de throughput d’erreurs reflètent le nombre complet, correspondant à ce qu’AppSignal enregistre pour la facturation.
Pour trouver les erreurs à l’origine du pic, allez dans Errors et filtrez par date de déploiement. Consultez le guide d’installation Elixir pour les instructions de mise à jour.