要件
Microsoft Azure インテグレーションをまだセットアップしていない場合は、最初にセットアップします。
この拡張機能は、以下のリソースタイプに対応しています。
- Azure App Service Web Apps
- Basic、Standard、Premium プランでホストされている Function App。
消費プランの Function App には対応していません。他の App Service リソースタイプやランタイムのサポートに興味がありますか?ベータ版が利用可能になったら、
サインアップしてお知らせを受け取りましょう。
Datadog .NET APM 拡張機能は、Windows OS 上で稼働する x64 と x86 アーキテクチャの双方で以下の .NET ランタイムをサポートします (AAS は Linux での拡張機能をサポートしていません) 。自動的にインスツルメントされたライブラリの詳細については、トレーサーのドキュメントを参照してください。
- .NET フレームワーク 4.6.1 以降
- .NET Core 2.1
- .NET Core 2.2 (Microsoft によるサポートは 2019 年 12 月 23 日に終了しました)
- .NET Core 3.0 (Microsoft によるサポートは 2020 年 3 月 3 日に終了しました)
- .NET Core 3.1
- .NET 5
- .NET 6
- .NET 7
- .NET 8
Datadog では、機能の最適なパフォーマンス、安定性、そして可用性を確保するため、拡張機能の最新バージョンへの定期的な更新を推奨しています。初期インストールおよびその後の更新を正常に完了するには、ウェブアプリを一度完全に停止する必要があります。
注: Datadog の自動インスツルメンテーションは、.NET CLR Profiling API に依存します。この API に許可されるサブスクライバーは 1 つのみです(たとえば Datadog の .NET トレーサーでプロファイラーを有効にした状態)。可視性を最大限に向上するため、アプリケーション環境内で 1 つの APM ソリューションのみを実行してください。
v2.3.0 以降、.NET 拡張機能はセマンティックバージョニングに依存しなくなりました。拡張機能は次のスキームを使用します: x.y.zAA
ここで、x.y.z
は .Net Tracer バージョンであり、 AA
は拡張機能専用です。zAA
の先行ゼロは、NuGet パッケージによってトリミングされるため、バージョンは x.y.A
になります。
例:
- 拡張機能
2.3.0
は Tracer v2.3.0
を使用します - 拡張機能
2.3.1
は Tracer v2.3.0
を使用します - 拡張機能
2.3.2
は Tracer v2.3.0
を使用します - 拡張機能
2.3.100
は Tracer v2.3.1
を使用します - 拡張機能
2.3.101
は Tracer v2.3.1
を使用します - 拡張機能
2.3.200
は Tracer v2.3.2
を使用します
インストール
Web アプリや関数を監視するために Azure インテグレーションを構成します。Datadog で対応する azure.app_services.count
または azure.functions.count
メトリクスが表示されることを確認し、正しく設定されていることを確認します。注: このステップは、メトリクス/トレースの相関、関数トレースパネル表示、および Azure App Services で Datadog を使用する際の全体的なエクスペリエンスを向上させるために重要です。
Azure Portal を開き、Datadog でインスツルメントする Azure アプリのダッシュボードに移動します。
注: Azure Native インテグレーションをご利用のお客様は、Azure の Datadog リソースを使用して、拡張機能を .NET アプリに追加することができます。手順については、Datadog の Azure Portal ガイドの App Service 拡張機能のセクションを参照してください。
‘Configuration’ ページで ‘Application settings’ タブを開きます。
Datadog API キーに対応するアプリケーション設定 DD_API_KEY
を追加し、Datadog API キーの値を設定します。
任意のアプリケーション設定を構成します。
DD_SITE
を
に設定(デフォルトは datadoghq.com
)。- トレースとカスタム統計をグループ化するには
DD_ENV
を設定します。 DD_SERVICE
を設定してサービス名を指定します(デフォルトはアプリ名)。- アプリからのアプリケーションログと相関するよう
DD_LOGS_INJECTION:true
を設定します。 - Set
DD_PROFILING_ENABLED:true
to enable .NET Continuous Profiler. - Application Security を有効にするには、
DD_APPSEC_ENABLED:true
を設定します。 - 任意のコンフィギュレーション変数の全リストをご参照ください。
Save をクリック(アプリケーションが再起動します)。
[必須] Stop をクリックしてアプリケーションを停止します。
Azure 拡張機能ページで Datadog APM 拡張機能を選択します。
法的事項を承諾し、OK をクリックしてインストールの完了を待機します。注: このステップを正常に完了するには、アプリが停止した状態である必要があります。
Start をクリックして、メインアプリケーションを起動します。
アプリケーションロギング
Azure App Service のアプリケーションから Datadog にログを送信するには、以下のいずれかの方法があります。
- 自動インスツルメンテーションによるエージェントレスロギング
- Serilog シンクによるエージェントレスロギング
どちらの方法でもトレース ID の挿入が可能で、Datadog のログとトレースを連携させることができます。拡張機能でトレース ID の挿入を有効にするには、アプリケーション設定 DD_LOGS_INJECTION:true
を追加してください。
注: この動作はアプリケーション内で発生するため、診断設定で送信する Azure Platform ログはトレース ID には含まれません。
DogStatsD を使用したカスタムメトリクス
Azure App Service の拡張機能には、DogStatsD (Datadog のメトリクス集計サービス) のインスタンスが含まれます。拡張機能を利用して、Azure Web Apps および Functions から Datadog へ直接カスタムメトリクス、サービスチェック、イベントを送信できます。
Azure App Service でカスタムメトリクスおよびチェックを書き込むことは、Datadog Agent が実行されているホスト上のアプリケーションでそれを実行するプロセスと同様です。拡張機能を使用して Azure App Service から Datadog へカスタムメトリクスを送信するには、以下を実行します。
- DogStatsD NuGet パッケージを Visual Studio プロジェクトに追加します。
- アプリケーション内で DogStatsD を初期化し、カスタムメトリクスを作成します。
- Azure App Service にコードをデプロイします。
- Datadog App Service 拡張機能のインストールがまだの場合は、先にインストールを行います。
注: 標準的な DogStatsD コンフィグプロセスとは異なり、DogStatsD のコンフィギュレーションを開始するのにポートやサーバー名の設定は必要ありません。Azure App Service にはアンビエント環境変数があり、メトリクスの送信条件を決定します(DogStatsD クライアントには v6.0.0 以上が必要)。
メトリクスを送信するには、以下のコードを使用します。
// DogStatsd クライアントと、任意のタグを構成します
if (!DogStatsd.Configure(new StatsdConfig() { ConstantTags = new[] { "app:sample.mvc.aspnetcore" } }))
{
// 必要な環境変数がない場合、`Configure` は false を返します.
// 以下の環境変数は Azure App Service に存在しますが、
// カスタムメトリクスをテストするために設定される必要があります: DD_API_KEY:{api_key}, DD_AGENT_HOST:localhost
// 使用環境に合わせてエラーを無視またはログに記録します
Console.WriteLine("Cannot initialize DogstatsD.");
}
// メトリクスを送信します
DogStatsd.Increment("sample.startup");
注: カスタムメトリクスのみを送信する場合 (トレースを無効にする場合)、アプリケーションの設定で次の変数を設定します。
DD_TRACE_ENABLED
を false
に設定します。DD_AAS_ENABLE_CUSTOM_METRICS
を true
に設定します。
カスタムメトリクスに関する詳細を参照してください。
要件
Microsoft Azure インテグレーションをまだセットアップしていない場合は、最初にセットアップします。
拡張機能では、Azure App Service Web Apps がサポートされます。Function Apps はサポートされません。
Support for Java Web Apps is in beta for extension v2.4+. There are no billing implications for tracing Java Web Apps during this period.
Interested in support for other App Service resource types or runtimes?
Sign up to be notified when a beta becomes available.
Datadog Java APM 拡張機能は、Windows OS 上のすべての Java ランタイムをサポートします。Azure App Service は、Linux 上の拡張機能をサポートしていません。自動インスツルメンテーションされたライブラリの詳細については、トレーサードキュメントを参照してください。
Datadog では、機能の最適なパフォーマンス、安定性、そして可用性を確保するため、拡張機能の最新バージョンへの定期的な更新を推奨しています。初期インストールおよびその後の更新を正常に完了するには、ウェブアプリを一度完全に停止する必要があります。
インストール
Web アプリや関数を監視するために Azure インテグレーションを構成します。Datadog で対応する azure.app_service.count
または azure.functions.count
メトリクスが表示されることを確認し、正しく設定されていることを確認します。注: このステップは、メトリクス/トレースの相関関係、機能的なトレース・パネル表示、Datadog サイトでの様々な壊れたユーザー体験の回避のために重要です。
Azure Portal を開き、Datadog でインスツルメントする Azure Web App のダッシュボードに移動します。
‘Configuration’ ページで ‘Application settings’ タブを開きます。
Datadog API キーに対応するアプリケーション設定 DD_API_KEY
を追加し、Datadog API キーの値を設定します。
任意のアプリケーション設定を構成します。
DD_SITE
を
に設定(デフォルトは datadoghq.com
)。- トレースとカスタム統計をグループ化するには
DD_ENV
を設定します。 DD_SERVICE
を設定してサービス名を指定します(デフォルトはウェブアプリ名)。- 任意のコンフィギュレーション変数の全リストをご参照ください。
Save をクリック(アプリケーションが再起動します)。
[必須] Stop をクリックしてアプリケーションを停止します。
Azure 拡張機能ページで Datadog APM 拡張機能を選択します。
法的事項を承諾し、OK をクリックしてインストールの完了を待機します。注: このステップを正常に完了するには、ウェブアプリが停止した状態である必要があります。
Start をクリックして、メインアプリケーションを起動します。
Azure Web Apps からのアプリケーションロギング
Azure App Service のアプリケーションから Datadog にログを送信するには、アプリから Datadog に直接ログをストリーミングする必要があります。この方法でログを送信すると、トレース ID の挿入が可能になり、Datadog でログとトレースの紐付けができるようになります。
注: トレース ID の挿入は、アプリケーションの内部で行われます。Azure Resource ログは、管理プレーンの Azure によって生成されるため、トレース ID は含まれません。
Azure App Service で Java のアプリケーションログを構成するには、Java によるエージェントレスログの説明を参照してください。
DogStatsD を使用したカスタムメトリクス
Azure App Service の拡張機能には、DogStatsD (Datadog のメトリクス集計サービス) のインスタンスが含まれます。拡張機能を利用して、Azure Web Apps から Datadog へ直接カスタムメトリクス、サービスチェック、イベントを送信できます。
この環境でカスタムメトリクスおよびチェックを書き込むことは、Datadog Agent が実行されている標準ホスト上のアプリケーションでそれを実行するプロセスと同様です。拡張機能を使用して Azure App Service から Datadog へカスタムメトリクスを送信するには、以下を実行します。
- DogStatsD クライアントをプロジェクトに追加します。
- アプリケーション内で DogStatsD を初期化し、カスタムメトリクスを作成します。
- サポートされている Azure ウェブアプリにコードをデプロイします。
- Datadog App Service 拡張機能のインストールがまだの場合は、先にインストールを行います。
注: 標準的な DogStatsD コンフィグプロセスとは異なり、DogStatsD のコンフィギュレーションを開始するのにポートやサーバー名の設定は必要ありません。Azure App Service にはアンビエント環境変数があり、メトリクスの送信条件を決定します(DogStatsD クライアントには v6.0.0 以上が必要)。
メトリクスを送信するには、以下のコードを使用します。
// DogStatsd クライアントの構成と、任意のタグの構成
StatsDClient client = new NonBlockingStatsDClientBuilder()
.constantTags("app:sample.service")
.build();
// メトリクスを送信する
client.Increment("sample.startup");
カスタムメトリクスに関する詳細を参照してください。
要件
Datadog-Azure インテグレーションをまだセットアップしていない場合は、最初にセットアップします。
Datadog の Azure App Service Node.js 拡張機能では、Azure App Service Web Apps がサポートされます。Function Apps はサポートされません。
インストール
Datadog-Azure インテグレーションが Azure Web App を監視するように構成を行います。検証のため、Datadog の azure.app_service.count
メトリクスで Web App がカウントされていることを確認してください。
Azure Portal を開き、Datadog でインスツルメントする Azure Web App のダッシュボードに移動します。
Configuration ページで Application settings タブに移動し、+ New application setting を選択します。
Datadog API キーを、DD_API_KEY
という名前のアプリケーション設定の値として追加します。
オプションで、アプリケーション設定としてさらに環境変数を設定することができます。これらの変数には以下が含まれます。
DD_SITE
:
(デフォルトは datadoghq.com
)DD_ENV
: 環境名DD_SERVICE
: サービス名 (デフォルトは Web App 名)DD_RUNTIME_METRICS_ENABLED
: ランタイムメトリクスを有効にする場合は true
DD_APPSEC_ENABLED
: Application Security Management を有効にする場合は true
任意のコンフィギュレーション設定の全リストを参照してください。
Save を選択します。これでアプリケーションが再起動します。
アプリケーションを停止します。
Extensions ページで Node Datadog APM 拡張機能を選択します。
規約に同意し、OK を選択して、インストールが完了するのを待ちます。
アプリケーションを開始します。
Azure Web Apps からのアプリケーションロギング
Azure App Service のアプリケーションから Datadog にログを送信するには、アプリから Datadog に直接ログをストリーミングする必要があります。この方法でログを送信すると、トレース ID の挿入が可能になり、Datadog でログとトレースの紐付けができるようになります。
Azure App Service の Node.js でアプリケーションロギングを構成するには、Node.js のエージェントレスロギング を参照してください。
Azure リソースログには、トレース ID は含まれません。
トレース ID の挿入は、アプリケーションの内部で行われます。Azure リソースログは、管理プレーンの Azure によって生成されるため、トレース ID は含まれません。
DogStatsD を使用したカスタムメトリクス
Datadog の Azure App Service Node.js 拡張機能には、DogStatsD (Datadog のメトリクス集計サービス) のインスタンスが含まれます。Azure Web Apps から Datadog へ直接カスタムメトリクス、サービスチェック、イベントを送信できます。
この環境でカスタムメトリクスおよびチェックを書き込むことは、Datadog Agent が実行されている標準ホスト上のアプリケーションでそれを実行するプロセスと同様です。拡張機能を使用して Azure App Service から Datadog へカスタムメトリクスを送信するには、以下を実行します。
- アプリケーション内で DogStatsD を初期化し、カスタムメトリクスを作成します。
- サポートされている Azure Web App にコードをデプロイします。
- Datadog の Azure App Service Node.js 拡張機能のインストールがまだの場合は、先にインストールを行います。
Node.js DogStatsD クライアントは、Azure App Service 拡張機能にパッケージされた Node.js トレーサー (dd-trace
) に含まれているため、インストールする必要はありません。
メトリクスを送信するには、以下のコードを使用します。
const tracer = require('dd-trace');
tracer.init();
tracer.dogstatsd.increment('example_metric.increment', 1, { environment: 'dev' });
tracer.dogstatsd.decrement('example_metric.decrement', 1, { environment: 'dev' });
Datadog の Node.js トレーサー
dd-trace
は、Azure App Service 拡張機能にパッケージされています。
NODE_PATH
に自動的に追加されます。
package.json に dd-trace
を依存関係として追加する必要はありません。 dd-trace
を依存関係として明示的に追加すると、拡張機能によって提供されるバージョンが上書きされる可能性があります。ローカルでテストする場合は、
リリースノートを参照して、Azure App Service 拡張機能のバージョンに適した Node.js トレーサーのバージョンを見つけてください。
カスタムメトリクスに関する詳細を参照してください。