プロファイラー機能の言語およびライブラリのバージョン

以下のテーブルは、各言語ランタイムで利用可能な機能をまとめたものです。 少なくとも 1 つの機能にアクセスするには、- 最小バージョンが必要です。これより前のバージョンを使用している場合、プロファイリングは利用できません。

  • 機能が完全に利用可能なバージョンでは、サポートされているすべての機能にアクセスできます。通常、すべての SDK を最新バージョンに更新することをお勧めします。
詳細については、各テーブルの言語見出しをクリックして、その言語のセットアップページに移動してください。

ランタイムと SDK のバージョン

Datadog Profiler を使用するには、以下のテーブルにまとめられた最小バージョン以上を使用してください。バージョンごとのプロファイルタイプの利用可否については、プロファイルタイプを参照してください。

JavaPythonGoRubyNode.js.NETPHPRust/C/C++
最小ランタイムバージョンJDK 8+Python 2.7+以前の主要な Go リリースRuby 2.5+Node.js 18+.NET Core 2.1+、.NET 5+、.NET Framework 4.6.1+PHP 7.1+
機能が完全に利用可能なランタイムバージョンJDK 11+Python 3.6+最新の主要な Go リリースRuby 3.2+Node.js 18+.NET 7+PHP 8.0+
機能が完全に利用可能な SDK バージョン最新最新最新最新最新最新最新最新

プロファイルタイプ

以下のテーブルは、言語別のプロファイルタイプの利用可否を示しています。最適なパフォーマンスとすべての機能へのアクセスのために、Datadog ではお使いの言語の最新バージョンの SDK を使用することを推奨しています。特定のランタイムバージョンが示されていない場合、そのプロファイルタイプは ランタイムと SDK のバージョンに記載されている最小ランタイムバージョンで使用可能です。

JavaPythonGoRubyNode.js.NETPHPRust/C/C++
CPU

各関数/メソッドがCPU上で実行に費やした時間。

プレビュー
例外

捕捉されたものを含む、発生した例外の数。

割り当て

各関数/メソッドによって行われたメモリ割り当ての回数およびサイズ(その後解放された割り当てを含む)。

JDK 11+Python 3.6+プレビュー
Node.js 26+
プレビュー
.NET 6+
(.NET 10 recommended)
プレビュー
Heap

割り当てられたヒープメモリのうち、使用中の量。

JDK 11+Python 3.6+プレビュー
Ruby 3.1+
ヒープのライブサイズは現在Ruby 4と互換性がありません
プレビュー
.NET 7+
(.NET 10 recommended)
プレビュー
ウォールタイム

各関数/メソッドの経過時間。経過時間には、コードがCPUで実行されている時間、I/O待ちの時間、および関数やメソッドの実行中に発生するその他すべての時間が含まれます。

ロック

各関数/メソッドがロックの待機および保持に費やした時間、ならびに各関数がロックを獲得した回数。

.NET 5+
I/O

各メソッドがファイルやソケットの読み書きに費やした時間。

プレビュー

その他の機能

以下のテーブルは、言語別の追加プロファイリング機能の概要です。すべての機能を最大限に活用し、最高のパフォーマンスを得るために、Datadogでは各言語のSDKの最新バージョンを使用することを推奨しています。特定のランタイムバージョンが指定されていない場合、その機能は ランタイムおよびSDKバージョンに記載されている最小ランタイムバージョンで使用可能です。

JavaPythonGoRubyNode.js.NETPHPRust/C/C++
トレースとプロファイリングの統合

パフォーマンスの問題に関連する特定のコード行を見つけます。詳細はこちら

エンドポイントプロファイリング

ボトルネックとなっている、またはリソースを大量に消費しているエンドポイントを特定します。詳細はこちら

タイムラインビュー

スパンにおける時間ベースのパターンと作業分布を明らかにします。詳細はこちら

メモリリーク

メモリリークの調査を支援するガイド付きワークフローです。詳細はこちら

参考資料

役立つドキュメント、リンク、記事: