- はじめに
- エージェント
- インテグレーション
- Watchdog
- イベント
- ダッシュボード
- モバイルアプリケーション
- インフラストラクチャー
- サーバーレス
- メトリクス
- ノートブック
- アラート設定
- APM & Continuous Profiler
- CI Visibility
- RUM & セッションリプレイ
- データベース モニタリング
- ログ管理
- セキュリティプラットフォーム
- Synthetic モニタリング
- ネットワークモニタリング
- 開発者
- API
- アカウントの管理
- データセキュリティ
- ヘルプ
以下のプロファイリング機能が利用できます。
すでに Datadog を使用している場合は、Agent をバージョン 7.20.2+ または 6.20.2+ にアップグレードしてください。プロファイラーはトレーサーと一緒に出荷されますので、OS に応じて以下の手順でインストーラーをインストールしてください。
.NET Profiler をマシン全体にインストールするには
お使いの OS とアーキテクチャに対応した最新の .NET Tracer パッケージをダウンロードします。
以下のコマンドのいずれかを実行して、パッケージをインストールし、適切な権限で .NET のログディレクトリ /var/log/datadog/dotnet
を作成します。
sudo dpkg -i ./datadog-dotnet-apm_<TRACER_VERSION>_amd64.deb && /opt/datadog/createLogPath.sh
sudo rpm -Uvh datadog-dotnet-apm<TRACER_VERSION>-1.x86_64.rpm && /opt/datadog/createLogPath.sh
sudo tar -C /opt/datadog -xzf datadog-dotnet-apm<TRACER_VERSION>-musl.tar.gz && sh /opt/datadog/createLogPath.sh
sudo tar -C /opt/datadog -xzf datadog-dotnet-apm<TRACER_VERSION>-tar.gz && /opt/datadog/createLogPath.sh
.NET Monitoring MSI インストーラーを使って、最新版をインストールまたはアップグレードしてください。Continuous Profiler は 64-bit Windows をサポートしていますので、datadog-dotnet-apm-<VERSION>-x64.msi
のようなファイルが必要です。
インストーラーを管理者権限で実行します。
自動インスツルメンテーションをアプリケーションにアタッチするために、以下の必要な環境変数を設定します。
CORECLR_ENABLE_PROFILING=1
CORECLR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
CORECLR_PROFILER_PATH=/opt/datadog/Datadog.Trace.ClrProfiler.Native.so
DD_DOTNET_TRACER_HOME=/opt/datadog
LD_PRELOAD=/opt/datadog/continuousprofiler/Datadog.Linux.ApiWrapper.x64.so
DD_PROFILING_ENABLED=1
DD_ENV=production
DD_VERSION=1.2.3
スタンドアロンアプリケーションの場合は、通常通り手動でアプリケーションを再起動します。
アプリケーションの起動 1〜2 分後、[Datadog APM > Profiler ページ][1]にプロファイルが表示されます。
プロファイラーを構成し、有効にするために必要な環境変数を設定します。IIS アプリケーションのプロファイラーを有効にするには、レジストリの HKLM\System\CurrentControlSet\Services\WAS
と HKLM\System\CurrentControlSet\Services\W3SVC
ノードで環境変数 DD_PROFILING_ENABLED
、DD_ENV
、DD_SERVICE
および DD_VERSION
を設定する必要があります。
レジストリエディターを使用:
レジストリエディターで、HKLM\System\CurrentControlSet\Services\WAS
と HKLM\System\CurrentControlSet\Services\W3SVC
ノード内の Environment
という複数文字列値を変更し、以下のように値を設定します。
.NET Core と .NET 5+ の場合:
CORECLR_ENABLE_PROFILING=1
CORECLR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
DD_PROFILING_ENABLED=1
DD_ENV=production
DD_VERSION=1.2.3
.NET Framework の場合:
COR_ENABLE_PROFILING=1
COR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
DD_PROFILING_ENABLED=1
DD_ENV=production
DD_VERSION=1.2.3
注: 環境変数は、すべての IIS アプリケーションに適用されます。IIS 10 以降、C:indexWindowsSystem32/inetsrv/config/applicationhost.config
ファイルに IIS アプリケーションごとの環境変数が設定できるようになりました。詳細は、Microsoft のドキュメントを参照してください。
管理者権限で以下のコマンドを実行し、IIS を完全に停止・起動します。
net stop /y was
net start w3svc
stop
and start
commands. A reset or restart does not always work.アプリケーションの起動 1〜2 分後、Datadog APM > Profiler ページにプロファイルが表示されます。
プロファイラーを構成し、有効にするために必要な環境変数を設定します。サービスのプロファイラーを有効にするには、サービスに関連付けられたレジストリキーで環境変数 DD_PROFILING_ENABLED
、DD_ENV
、DD_SERVICE
および DD_VERSION
を設定する必要があります。
レジストリエディターを使用:
レジストリエディターで、HKLM\System\CurrentControlSet\Services\MyService
キーに Environment
複数の文字列値を作成します。
.NET Core と .NET 5+ の場合:
CORECLR_ENABLE_PROFILING=1
CORECLR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
DD_PROFILING_ENABLED=1
DD_SERVICE=MyService
DD_ENV=production
DD_VERSION=1.2.3
.NET Framework の場合:
COR_ENABLE_PROFILING=1
COR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
DD_PROFILING_ENABLED=1
DD_SERVICE=MyService
DD_ENV=production
DD_VERSION=1.2.3
PowerShell スクリプトを使用:
.NET Core と .NET 5+ の場合:
[string[]] $v = @(
"CORECLR_ENABLE_PROFILING=1",
"CORECLR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}",
"DD_PROFILING_ENABLED=1",
"DD_SERVICE=MyService",
"DD_ENV=production",
"DD_VERSION=1.2.3"
)
Set-ItemProperty HKLM:SYSTEM\CurrentControlSet\Services\MyService -Name Environment -Value $v
.NET Framework の場合:
[string[]] $v = @(
"COR_ENABLE_PROFILING=1",
"COR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}",
"DD_PROFILING_ENABLED=1",
"DD_SERVICE=MyService",
"DD_ENV=production",
"DD_VERSION=1.2.3"
)
Set-ItemProperty HKLM:SYSTEM\CurrentControlSet\Services\MyService -Name Environment -Value $v
アプリケーションの起動 1〜2 分後、Datadog APM > Profiler ページにプロファイルが表示されます。
コンソール、ASP.NET (Core)、Windows Forms、WPF などの非サービスアプリケーションでプロファイラーを構成して有効にするために、必要な環境変数を設定します。スタンドアロンアプリケーションのプロファイラーを有効にするには、DD_PROFILING_ENABLED
、DD_ENV
、DD_SERVICE
および DD_VERSION
環境変数を設定する必要があります。推奨される方法は、これらを設定しアプリケーションを起動するバッチファイルを作成し、そのバッチファイルを使用してアプリケーションを実行することです。
.NET Core と .NET 5+ の場合:
SET CORECLR_ENABLE_PROFILING=1
SET CORECLR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
SET DD_PROFILING_ENABLED=1
SET DD_SERVICE=MyService
SET DD_ENV=production
SET DD_VERSION=1.2.3
REM start the application here
.NET Framework の場合:
SET COR_ENABLE_PROFILING=1
SET COR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
SET DD_PROFILING_ENABLED=1
SET DD_SERVICE=MyService
SET DD_ENV=production
SET DD_VERSION=1.2.3
REM start the application here
アプリケーションの起動 1〜2 分後、Datadog APM > Profiler ページにプロファイルが表示されます。
プロファイラーを構成するには、以下の環境変数を使用します。これらの設定のほとんどは、トレーサーの構成にも適用されることに注意してください。これらの設定を変更した後は、アプリケーションを再起動します。
環境変数 | タイプ | 説明 |
---|---|---|
DD_ENV | 文字列 | 環境名、例えば production です。設定されていない場合は、 unspecified-environment となります。 |
DD_SERVICE | 文字列 | サービス名、例えば web-backend です。これが指定されていない場合、.NET Profiler はアプリケーション名 (プロセスエントリアセンブリまたはプロセス名) から自動的にサービス名を決定しようとします。 |
DD_VERSION | 文字列 | サービスのバージョン。設定されていない場合は、unspecified-version となります。 |
DD_TAGS | 文字列 | アップロードされたプロファイルに適用するタグ。<key>:<value> のように、コンマ区切り形式のリストである必要があります(例、layer:api,team:intake )。 |
DD_AGENT_HOST | 文字列 | プロファイルが送信されるホストを設定します (Agent を実行するホスト)。ホスト名または IP アドレスにできます。DD_TRACE_AGENT_URL が設定されている場合は無視されます。デフォルトは localhost です。 |
DD_TRACE_AGENT_PORT | 文字列 | プロファイルが送信されるポートを設定します (Agent が接続のためにリッスンしているポート)。DD_TRACE_AGENT_URL が設定されている場合は無視されます。デフォルトは 8126 です。 |
DD_TRACE_AGENT_URL | 文字列 | プロファイルが送信される URL エンドポイントを設定します。設定された場合、DD_AGENT_HOST と DD_TRACE_AGENT_PORT をオーバーライドします。デフォルトは http://<DD_AGENT_HOST>:<DD_TRACE_AGENT_PORT> です。 |
DD_TRACE_DEBUG | Boolean | デバッグログを有効または無効にします (トラブルシューティングの調査時に役立ちます)。有効な値は true または false です。デフォルトは false です。 |
DD_PROFILING_LOG_DIR | 文字列 | .NET Profiler のログを保存するディレクトリを設定します。デフォルトは %ProgramData%\Datadog-APM\logs\ です。 |
DD_PROFILING_ENABLED | Boolean | true に設定すると、.NET Profiler が有効になります。デフォルトは false です。 |
DD_PROFILING_CPU_ENABLED | Boolean | true に設定すると、CPU プロファイリングが有効になります。デフォルトは false です。 |
DD_PROFILING_EXCEPTION_ENABLED | Boolean | true に設定すると、Exceptions プロファイリングが有効になります。デフォルトは false です。 |
HKLM\System\CurrentControlSet\Services\WAS
および HKLM\System\CurrentControlSet\Services\W3SVC
ノード) で環境変数の設定を行う必要があります。この環境変数は、すべての IIS アプリケーションに適用されます。
IIS 10 以降では、C:\Windows\System32\inetsrv\config\applicationhost.config
ファイルで、IIS アプリケーションごとの環境変数を設定できます。詳細は、Microsoft のドキュメントを参照してください。プロファイラーの概要ガイドでは、パフォーマンスの問題があるサンプルサービスを例に、Continuous Profiler を使用して問題を理解し修正する方法を確認します。
お役に立つドキュメント、リンクや記事: