Comprendre la stratégie de rétention de Datadog pour conserver efficacement les données de trace
Ingérer et conserver les traces qui vous intéressent
La plupart des traces générées par vos applications sont répétitives, et il n’est pas nécessairement pertinent de toutes les ingérer ou les conserver. Pour les requêtes réussies, il suffit de conserver un échantillon représentatif du trafic de vos applications, car vous ne pouvez pas analyser chaque seconde des dizaines de requêtes individuelles tracées.
Le plus important, ce sont les traces qui contiennent des symptômes de problèmes potentiels dans votre infrastructure, c’est-à-dire les traces avec des erreurs ou une latence inhabituelle. En outre, pour certains endpoints essentiels à votre activité, il est judicieux de conserver 100 % du trafic, afin de vous assurer que vous êtes en mesure d’étudier en profondeur et de résoudre tout problème rencontré par les utilisateurs.
Datadog propose principalement deux moyens de conserver les données au-delà de 15 minutes :
Algorithme d’échantillonnage de diversité : filtre de rétention intelligent
Par défaut, le filtre de rétention intelligent conserve une sélection représentative de traces sans qu’il soit nécessaire de créer des dizaines de filtres de rétention personnalisés.
Il conserve au moins un span (et le tracer distribué associé) pour chaque combinaison de environment
, service
, operation
et resource
toutes les 15 minutes au maximum pour les percentiles de latence p75
, p90
et p95
, ainsi qu’une sélection représentative d’erreurs, pour chaque code d’état de réponse distinct.
Pour en savoir plus, lisez la documentation sur le filtre de rétention intelligent.
Les filtres de rétention basés sur les tags offrent la possibilité de conserver de façon flexible les traces qui sont les plus critiques pour votre entreprise. Lors de l’indexation de spans avec des filtres de rétention, la trace associée est également stockée, ce qui vous permet de garder une visibilité sur l’ensemble de la requête et son contexte distribué.
Recherche et analyse efficaces des données indexées du span
L’ensemble des données capturées par l’échantillonnage de diversité n’est pas uniformément échantillonné (c’est-à-dire qu’il n’est pas proportionnellement représentatif de l’ensemble du trafic). Il est biaisé en faveur des traces dʼerreurs et de latence élevée. Si vous souhaitez créer des analyses uniquement à partir d’un ensemble de données uniformément échantillonné, excluez ces spans qui sont échantillonnés pour des raisons de diversité en ajoutant le paramètre de requête -retained_by:diversity_sampling
dans le Trace Explorer.
Par exemple, pour mesurer le nombre d’opérations d’encaissement groupées par niveau de marchand sur votre application, exclure l’ensemble de données d’échantillonnage de diversité garantit que vous effectuez cette analyse à partir d’un ensemble de données représentatif, et que les proportions d’encaissements basic
, enterprise
, et premium
sont réalistes :
D’autre part, si vous souhaitez mesurer le nombre de marchands uniques par niveau de marchand, incluez l’ensemble de données d’échantillonnage de diversité qui peut capturer des ID de marchands supplémentaires qui n’ont pas été pris en compte par les filtres de rétention personnalisés :
Documentation, liens et articles supplémentaires utiles: