1. Ingestion et rétention #
Deux niveaux de contrôle.
Principe #
- Les métriques de traces (hits, erreurs, latence par ressource) sont calculées sur tout le trafic, quel que soit l'échantillonnage.
- Les règles d'échantillonnage (variable
DD_TRACE_SAMPLING_RULESou configuration distante) décident quelles traces sont ingérées. - Les filtres de rétention choisissent les spans indexés 15 jours : par défaut erreurs, latences hautes et un échantillon diversifié.
export DD_TRACE_SAMPLING_RULES='[{"service":"shop","name":"http.request","sample_rate":0.2},{"service":"shop","resource":"GET /health","sample_rate":0}]' 2. Profiler et instrumentation dynamique #
Au-delà des traces.
Outils #
| Outil | Apporte | Usage |
|---|---|---|
| Continuous Profiler | CPU, mémoire, verrous par fonction, en continu | Trouver la fonction coûteuse derrière un endpoint lent |
| Code Hotspots | Lien entre un span et le profil pendant ce span | Expliquer la latence d'une requête précise |
| Dynamic Instrumentation | Ajouter un log ou une métrique dans le code en production, sans redéployer | Investiguer un bug rare |
| Error Tracking | Regroupement des erreurs en problèmes | Prioriser les corrections |
3. Software Catalog #
Qui possède quoi.
Propriété des services #
Le Software Catalog (ex-Service Catalog) recense les services avec leur équipe, leur astreinte, leurs dépôts, leurs runbooks et leur niveau de criticité, décrits dans un fichier versionné avec le code :
# service.datadog.yaml
apiVersion: v3
kind: service
metadata:
name: shop
owner: team-commerce
links:
- { name: Runbook, type: runbook, url: https://wiki.example.com/shop }
spec:
lifecycle: production
tier: "1"Bonne Pratique : Un service sans propriétaire est un incident sans responsable : faites de la fiche du catalogue un prérequis de mise en production.
