次の方法で共有


Application Insights の接続文字列

接続文字列には、インストルメント化されたアプリケーションからテレメトリ データを送信する必要がある Application Insights リソースを指定します。 接続文字列は複数の設定で構成されます。各設定はキーと値のペアとして表され、セミコロンで区切られます。 このように構成方法が統合されているため、複数のプロキシ設定が不要になり、セットアップ プロセスが簡単になります。

重要

接続文字列には iKey が含まれています。これは、インジェスト サービスがテレメトリを特定の Application Insights リソースに関連付けるために使う一意の識別子です。 Ikey の一意識別子はセキュリティ トークンやセキュリティ キーではなく、シークレットと見なされません。

Application Insights リソースを不正使用から保護する場合、インジェスト エンドポイントには、Microsoft Entra ID に基づく認証付きのテレメトリ インジェスト オプションが用意されています。

Note

インストルメンテーション キーのインジェストのサポートは、2025 年 3 月 31 日に終了します。 インストルメンテーション キーのインジェストは引き続き機能しますが、この機能の更新プログラムやサポートは提供されなくなります。 接続文字列に移行することで、新機能をご利用いただけます。

接続文字列の機能

  • 信頼性: 接続文字列では、グローバル インジェスト エンドポイントの依存関係が除去されるので、利用統計情報のインジェストの信頼性が高まります。
  • セキュリティ: 接続文字列では、Application Insights の Microsoft Entra 認証を使って、利用統計情報のインジェストを認証できます。
  • カスタマイズされたエンドポイント (ソブリンまたはハイブリッド クラウド環境): エンドポイント設定を使用すると、特定の Azure Government リージョンにデータを送信できます。 (次の例を参照してください。)
  • プライバシー (リージョンのエンドポイント): 接続文字列では、データはリージョンのエンドポイントに送信され、地理的リージョンの外に流出しないので、プライバシーに関する懸念が軽減されます。

接続文字列を見つける

接続文字列は、Application Insights リソースの [概要] セクションに表示されます。

Application Insights の概要と接続文字列を示すスクリーンショット。

スキーマ

スキーマ要素については、以下のセクションで説明します。

最大長

接続でサポートされている最大長は 4096 文字です。

キー/値ペア

接続文字列は、キーと値のペアがセミコロンで区切られた設定のリストで構成されます: key1=value1;key2=value2;key3=value3

ヒント

このドキュメントでは、構成可能なキーと値のペアについて説明します。 ApplicationId など、一部のキーと値のペアは構成できず、自動的に設定されます。 環境内にこれらが検出された場合は、無視しても問題ありません。

構文

  • InstrumentationKey (例: 00000000-0000-0000-0000-000000000000)。 InstrumentationKey は "必須" フィールドです。

  • Authorization (例: ikey)。 現時点では ikey 認証のみがサポートされているため、この設定は省略可能です。

  • EndpointSuffix (例: applicationinsights.azure.cn)。 エンドポイント サフィックスを設定すると、SDK に接続先の Azure クラウドが指定されます。 SDK により、個々のサービスに対して残りのエンドポイントが構成されます。

  • 明示的なエンドポイント。 どのサービスも、接続文字列内で明示的にオーバーライドできます:

    • IngestionEndpoint (例: https://dc.applicationinsights.azure.com)
    • LiveEndpoint (例: https://live.applicationinsights.azure.com)
    • ProfilerEndpoint (例: https://profiler.monitor.azure.com)
    • SnapshotEndpoint (例: https://snapshot.monitor.azure.com)

エンドポイント スキーマ

<prefix>.<suffix>

  • プレフィックス: サービスを定義します。
  • サフィックス: 共通ドメイン名を定義します。

有効なサフィックス

  • applicationinsights.azure.cn
  • applicationinsights.us

詳細については、「エンドポイントの変更が必要なリージョン」を参照してください。

有効なプレフィックス

接続文字列の例

さまざまな接続文字列の例を次に示します。

エンドポイント サフィックスが付いた接続文字列

InstrumentationKey=00000000-0000-0000-0000-000000000000;EndpointSuffix=ai.contoso.com;

この例では、接続文字列でエンドポイント サフィックスが指定され、SDK によってサービス エンドポイントが構成されます。

  • 認証方式の既定値は "ikey" です
  • インストルメンテーション キー: 00000000-0000-0000-0000-000000000000
  • リージョン サービスの Uniform Resource Identifier (URI) は、提供されたエンドポイントのサフィックスに基づいてます。
    • インジェスト: https://dc.ai.contoso.com
    • ライブ メトリック: https://live.ai.contoso.com
    • Profiler for .NET: https://profiler.ai.contoso.com
    • デバッガー: https://snapshot.ai.contoso.com

明示的なエンドポイント オーバーライドを含む接続文字列

InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://custom.com:111/;LiveEndpoint=https://custom.com:222/;ProfilerEndpoint=https://custom.com:333/;SnapshotEndpoint=https://custom.com:444/;

この例では、この接続文字列によって、すべてのサービスに明示的なオーバーライドが指定されています。 SDK により、提供された正確なエンドポイントがそのまま使用されます。

  • 認証方式の既定値は "ikey" です
  • インストルメンテーション キー: 00000000-0000-0000-0000-000000000000
  • リージョン サービスの URI は、明示的なオーバーライド値に基づきます。
    • インジェスト: https://custom.com:111/
    • ライブ メトリック: https://custom.com:222/
    • Profiler for .NET: https://custom.com:333/
    • デバッガー: https://custom.com:444/

明示的なリージョンを含む接続文字列

InstrumentationKey=00000000-0000-0000-0000-000000000000;IngestionEndpoint=https://southcentralus.in.applicationinsights.azure.com/

この例では、接続文字列によって米国中南部リージョンが指定されています。

  • 認証方式の既定値は "ikey" です
  • インストルメンテーション キー: 00000000-0000-0000-0000-000000000000
  • リージョン サービスの URI は、明示的なオーバーライド値に基づきます。
    • インジェスト: https://southcentralus.in.applicationinsights.azure.com/

使用できるリージョンを一覧表示するには、Azure CLI で次のコマンドを実行します。

az account list-locations -o table

接続文字列を設定する

すべての OpenTelemetry オファリングと次の SDK バージョン以降では、接続文字列がサポートされています。

  • .NET v2.12.0
  • JavaScript v2.3.0
  • NodeJS v1.5.0
  • Python v1.0.0

接続文字列を設定するには、コードを使用するか、環境変数または構成ファイルを使用します。

環境変数

接続文字列: APPLICATIONINSIGHTS_CONNECTION_STRING

コード サンプル

Language Classic API OpenTelemetry
ASP.NET Core Application Insights SDK AzMon OTel Distro
.NET Framework Application Insights SDK AzMon Exporter
Java N/A Java エージェント
JavaScript JavaScript (Web) SDK ローダー スクリプト N/A
Node.js Application Insights SDK AzMon OTel Distro
Python OpenCensus Python SDK AzMon OTel Distro

よく寄せられる質問

このセクションでは、一般的な質問への回答を示します。

新しい Azure リージョンでは、接続文字列を使用する必要がありますか。

新しい Azure リージョンでは、インストルメンテーション キーの代わりに接続文字列を使用する必要があります。 接続文字列により、テレメトリ データと関連付けるリソースが識別されます。 また、リソースでテレメトリの宛先として使用するエンドポイントを変更することもできます。 接続文字列をコピーし、アプリケーションのコードまたは環境変数に追加してください。

接続文字列またはインストルメンテーション キーを使用する必要はありますか?

インストルメンテーション キーの代わりに、接続文字列を使用することをお勧めします。

次のステップ

実行時に開始する:

開発時に開始する: