Configuration automatique
La collecte de métriques JVM est activée par défaut pour le traceur Java v0.29.0+. Elle peut être désactivée en définissant un paramètre de configuration dans le client de tracing, soit via la propriété système -Ddd.jmxfetch.enabled=false
, soit via la variable d’environnement DD_JMXFETCH_ENABLED=false
. Depuis la version 0.64.0, vous pouvez également utiliser la variable d’environnement DD_RUNTIME_METRICS_ENABLED=false
pour désactiver la collecte.
Les métriques JVM peuvent être visualisées conjointement à vos services Java. Consultez la page Service dans Datadog.
Par défaut, les métriques runtime de votre application sont envoyées à l’Agent Datadog via DogStatsD sur le port 8125
. Vérifiez que DogStatsD est activé pour l’Agent.
Si vous exécutez l’Agent en tant que conteneur, vérifiez que DD_DOGSTATSD_NON_LOCAL_TRAFFIC
est définie sur true et que le port 8125
est ouvert sur l’Agent. En outre, pour :
Remarques :
- Pour l’IU de runtime,
dd-trace-java
>= 0.24.0
est pris en charge. - Pour associer des métriques JVM dans des graphiques de performances, veillez à ce que
env: tag
(sensible à la casse) soit défini et corresponde sur l’ensemble de votre environnement. - Pour que les métriques JVM s’affichent sur la page Service lorsque vous utilisez Fargate, vérifiez que
DD_DOGSTATSD_TAGS
est défini sur la tâche de votre Agent et qu’il a pour valeur le env: tag
de ce service.
Données collectées
Les métriques suivantes sont recueillies par défaut pour chaque process JVM après l’activation des métriques JVM.
jvm.heap_memory (gauge) | The total Java heap memory used. Shown as byte |
jvm.heap_memory_committed (gauge) | The total Java heap memory committed to be used. Shown as byte |
jvm.heap_memory_init (gauge) | The initial Java heap memory allocated. Shown as byte |
jvm.heap_memory_max (gauge) | The maximum Java heap memory available. Shown as byte |
jvm.non_heap_memory (gauge) | The total Java non-heap memory used. Non-heap memory is calculated as follows: Metaspace + CompressedClassSpace + CodeCache Shown as byte |
jvm.non_heap_memory_committed (gauge) | The total Java non-heap memory committed to be used. Shown as byte |
jvm.non_heap_memory_init (gauge) | The initial Java non-heap memory allocated. Shown as byte |
jvm.non_heap_memory_max (gauge) | The maximum Java non-heap memory available. Shown as byte |
jvm.thread_count (count) | The number of live threads. Shown as thread |
jvm.gc.cms.count (count) | The total number of garbage collections that have occurred. |
jvm.gc.major_collection_count (gauge) | The rate of major garbage collections. Set new_gc_metrics: true to receive this metric. |
jvm.gc.minor_collection_count (gauge) | The rate of minor garbage collections. Set new_gc_metrics: true to receive this metric. |
jvm.gc.parnew.time (gauge) | The approximate accumulated garbage collection time elapsed. Shown as millisecond |
jvm.gc.major_collection_time (gauge) | The fraction of time spent in major garbage collection. Set new_gc_metrics: true to receive this metric. Shown as permille |
jvm.gc.minor_collection_time (gauge) | The fraction of time spent in minor garbage collection. Set new_gc_metrics: true to receive this metric. Shown as permille |
Datadog fournit non seulement ces métriques sur votre page Service de l’APM, mais également un dashboard de runtime JVM par défaut.
En outre, vous pouvez ajouter des métriques JMX à l’aide de fichiers de configuration qui sont transmis à dd.jmxfetch.config.dir
et dd.jmxfetch.config
. Il est également possible d’activer chaque intégration JMX de Datadog à l’aide du paramètre dd.jmxfetch.<NOM_INTÉGRATION>.enabled=true
. Cela intègre automatiquement la configuration des fichiers de configuration JMX existants de Datadog. Consultez la section relative à l’intégration JMX pour en savoir plus sur la configuration.
Pour aller plus loin
Documentation, liens et articles supplémentaires utiles: