監視用にアプリをインストルメント化する
Application Insights は、自動インストルメンテーション (エージェント) または Application Insights SDK をアプリケーション コードに追加することによって有効になります。
自動インストルメンテーション
自動インストルメンテーションは、推奨されるインストルメンテーション メソッドです。 開発者の投資は必要なく、SDK の更新に関連する将来のオーバーヘッドを排除します。 また、ソース コードにアクセスできないアプリケーションをインストルメント化する唯一の方法でもあります。
基本的には、テレメトリを自動的に収集するエージェントを有効にし、場合によっては構成する必要があります。
自動インストルメンテーションによってサポートされているサービスのリストは素早く変化します。現在サポートされている内容のリストについては、この ページ を訪問してください。
Application Insights SDK を使用した有効化
Application Insights SDK は、次の状況でのみインストールする必要があります。
- カスタム イベントとメトリックが必要です
- テレメトリのフローを制御する必要がある
- 自動インストルメンテーションは使用できません (通常、言語またはプラットフォームの制限が原因)
SDK を使用するには、小さなインストルメンテーション パッケージをアプリにインストールし、Web ページ内で Web アプリ、バックグラウンド コンポーネント、JavaScript をインストルメント化します。 アプリとそのコンポーネントを Azure でホストする必要はありません。 インストルメンテーションはアプリを監視し、一意のトークンを使用してテレメトリ データを Application Insights リソースに転送します。
.NET、.NET Core、Java、Node.js、JavaScript 用の Application Insights SDK はすべて、分散トレースをネイティブにサポートします。
さらに、TelemetryClient
で TrackDependency
を呼び出すと、任意のテクノロジを手動で追跡できます。
OpenCensus を使用して有効にする
Application Insights SDK に加えて、Application Insights では OpenCensus を介した分散トレースもサポートされています。 OpenCensus は、サービスのメトリック収集と分散トレースを提供する、オープン ソースのベンダーに依存しないライブラリの単一配布です。 また、オープン ソース コミュニティでは、Redis、Memcached、MongoDB などの一般的なテクノロジを使用して分散トレースを有効にすることもできます。