Passer au contenu principal
Cette page explique comment AppSignal gère le temps, pourquoi les machines peuvent indiquer des heures imprécises, et comment synchroniser les serveurs d’application avec des serveurs NTP. Les données qu’AppSignal collecte depuis votre application et votre serveur d’application sont associées à un horodatage. Cet horodatage correspond au moment où une requête HTTP a été effectuée, où une tâche d’arrière-plan a démarré, où une métrique a été définie, ou où un événement a débuté dans l’application. Ce moment est ensuite utilisé pour afficher les graphiques, les échantillons et les données d’événements dans l’ordre chronologique. ⚠️ L’horodatage associé aux données d’une application est basé sur la date et l’heure du serveur de l’instance de l’application. Si un serveur d’application n’indique pas approximativement l’heure actuelle, cela peut causer des problèmes dans le traitement et les alertes d’AppSignal. Lorsqu’une application possède plusieurs serveurs, ces serveurs doivent indiquer approximativement la même heure. Une différence de quelques secondes peut ne pas avoir un grand impact, mais une différence de plusieurs minutes créera des effets indésirables. Cela inclut des graphiques, des métriques et des échantillons inexacts, ainsi que des notifications manquées concernant les alertes de détection d’anomalies. Pour en savoir plus sur la façon dont les données de votre application et de vos serveurs sont envoyées aux serveurs d’AppSignal et dont les données sont ensuite traitées, consultez notre page sur le cycle de vie des données. En particulier pour les alertes de détection d’anomalies, il est très important de s’assurer que l’heure correcte est envoyée depuis une application, afin d’éviter de manquer des alertes sur les métriques.

Dérive d’horloge

Les ordinateurs peuvent subir une dérive d’horloge, entraînant un décalage de plus en plus important par rapport à l’horloge de référence, c’est-à-dire l’heure actuelle. Cela signifie que l’horloge d’un serveur d’application peut être en avance ou en retard de plusieurs minutes par rapport à l’heure réelle. Étant donné que les données de transactions utilisent l’horodatage du serveur, si le serveur est désynchronisé, les données envoyées le sont également. Des heures d’horloge inexactes peuvent causer des problèmes avec les heures rapportées pour les échantillons et les métriques, et entraver les rapports pour les déclencheurs de détection d’anomalies. Les échantillons et les métriques ne seront pas affichés à l’heure réelle à laquelle ils sont survenus. La détection d’anomalies ne pourra pas créer d’alertes pour les métriques rapportées avec des horodatages inexacts. Pour minimiser la dérive d’horloge, nous vous recommandons de configurer vos serveurs pour synchroniser automatiquement leur heure actuelle avec un serveur NTP.

À propos du futur

Lorsqu’AppSignal détecte des données de transactions avec des horodatages situés dans le futur (du point de vue de l’heure actuelle du processeur AppSignal), il enverra une notification pour alerter les utilisateurs de l’application au sujet de l’heure erronée envoyée par l’application. Cette notification n’est pas disponible pour les métriques (personnalisées) envoyées depuis une instance d’application, mais pourra être ajoutée à l’avenir.

Configurer la synchronisation NTP

La synchronisation d’un serveur avec des serveurs NTP garantit que l’heure d’un serveur est approximativement la même qu’une horloge de référence. NTP, Network Time Protocol, est le protocole utilisé par les ordinateurs pour synchroniser les heures sur les réseaux. En pratique, les serveurs et les ordinateurs personnels interrogent un ou plusieurs serveurs régulièrement pour récupérer l’heure actuelle. Si l’heure renvoyée diffère de l’heure actuelle de l’ordinateur, celui-ci met à jour son heure actuelle avec la valeur NTP. Une interrogation fréquente des serveurs NTP par un serveur d’application garantit que le serveur ne s’écartera jamais trop de l’heure de référence. Les serveurs d’AppSignal sont également configurés pour se synchroniser avec des serveurs NTP. Le paquet ntp synchronise une machine avec des serveurs NTP sur la plupart des systèmes. Ubuntu propose le paquet timesyncd, dans le cadre de systemd depuis Ubuntu 16.04. Les instructions de configuration NTP peuvent différer selon votre distribution Linux ou votre système d’exploitation. Veuillez consulter un guide adapté à votre configuration. Veillez à vérifier l’installation NTP en vérifiant si la date et l’heure actuelles du serveur sont synchronisées avec les serveurs NTP à l’aide des commandes ntpstat ou timedatectl status (Ubuntu/systemd).