Java ランタイムメトリクス

Java ランタイムメトリクス

自動コンフィギュレーション

JVM メトリクス収集は、初期設定で Java トレーサー v0.29.0+ に有効になっています。トレースクライアントの設定パラメーターで、システムプロパティ -Ddd.jmxfetch.enabled=false または環境変数 DD_JMXFETCH_ENABLED=false を使用して無効にすることも可能です。v0.64.0+ では、DD_RUNTIME_METRICS_ENABLED=false 環境変数を使用して無効にすることもできます。

JVM メトリクスは、Java サービスと相関して表示できます。Datadog のサービス詳細画面を参照してください。

初期設定では、アプリケーションからのランタイムメトリクスは、ポート 8125 を介して DogStatsD と共に Datadog Agent に送信されます。DogStatsD が Agent に対して有効になっていることを確認してください。

Agent をコンテナとして実行している場合は、DD_DOGSTATSD_NON_LOCAL_TRAFFIC true に設定されていることと、Agent コンテナでポート 8125 が開いていることを確認してください。また、

:

  • ランタイム UI では、dd-trace-java >= 0.24.0 がサポートされています。
  • フレームグラフ内で JVM メトリクスを関連付けるには、環境全体で env: tag(大文字と小文字を区別)が設定され、一致していることを確認してください。
  • Fargate 使用時に、JVM メトリクスがサービス詳細画面に表示されるようにするには、Agent タスクに DD_DOGSTATSD_TAGS が設定されていて、そのサービスの env: tag が一致することを確認します。

収集データ

以下のメトリクスは 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.
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
(count)
The number of major garbage collections that have occurred. Set `new_gc_metrics: true` to receive this metric.
jvm.gc.minor_collection_count
(count)
The number of minor garbage collections that have occurred. 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 approximate major garbage collection time elapsed. Set `new_gc_metrics: true` to receive this metric.
Shown as millisecond
jvm.gc.minor_collection_time
(gauge)
The approximate minor garbage collection time elapsed. Set `new_gc_metrics: true` to receive this metric.
Shown as millisecond

Datadog では、APM サービス詳細画面にこれらのメトリクスを表示し、これらのメトリクスに適用された service および runtime-id タグ付きのデフォルトの JVM ランタイムダッシュボードを提供します。

dd.jmxfetch.config.dirdd.jmxfetch.config を使用して引き継がれる設定ファイルを使用すると、さらに JMX メトリクスを追加できます。dd.jmxfetch.<INTEGRATION_NAME>.enabled=true パラメータを使用して、既存の Datadog JMX インテグレーションを個別に有効にすることもできます。これにより、Datadog の[既存の JMX 設定ファイル] 8からコンフィギュレーションが自動的に埋め込まれます。設定の詳細については、JMX インテグレーションを参照してください。

その他の参考資料