コード最適化を使用してランタイムの動作を監視および分析する
Azure Application Insights の AI ベースのサービスであるコード最適化は、Application Insights Profiler と連携し、コード レベルで CPU とメモリ使用量のパフォーマンス問題を検出し、修正方法に関する推奨事項を提供します。 コード最適化では、次の方法でこれらの CPU とメモリのボトルネックが識別されます。
- アプリケーションのランタイム動作を分析する。
- 動作とパフォーマンス エンジニアリングのベスト プラクティスを比較する。
運用環境から収集されたリアルタイムのパフォーマンス データと分析情報を使用し、情報を得た上で意思決定し、コードを最適化します。
デモ ビデオ
コード最適化を使用するための要件
アプリケーションでコード最適化を使用するには、その前に以下を行う必要があります。
- Application Insights Profiler を有効にする。
- アプリケーションで以下を確認する。
- .NET かどうか。
- Application Insights を使用しているか。
- プロファイルを収集しています。
Application Insights Profiler とコード最適化
Application Insights Profiler とコード最適化は連携して、パフォーマンスの問題検出に対する包括的なアプローチを提供します。
Application Insights Profiler
Profiler では、特定の要求をミリ秒単位まで追跡することに重点を置いています。 アプリケーション内の問題の優れた "全体像" のビューと、それらに対処するための一般的なベスト プラクティスが提供されます。
コード最適化
コード最適化では、Application Insights Profiler によって収集されたプロファイル データが分析されます。 Profiler が Application Insights にデータをアップロードすると、機械学習モデルによってデータの一部が分析され、アプリケーションのコードを最適化できる箇所が見つかります。 コード最適化では、以下を行います。
- 時間の経過に伴って収集された集計データを表示します。
- アプリケーション コード内のメソッドと関数にデータを結びつけます。
- コード内のボトルネックを見つけることで、原因を絞り込みます。
コストとオーバーヘッド
コード最適化は、Application Insights Profiler が有効になった後に自動的に生成されます。 パフォーマンスの問題を分析し、パフォーマンスに関する推奨事項を生成するための追加コストは発生しません。 機能の中には、GitHub 用の Copilot や Azure 用の Copilot を必要とするものがあります (コード レベルの修正候補など)。
サポートされているリージョン
コード最適化は、Application Insights と同じリージョンで使用できます。 次のコマンドを使用して、使用可能なリージョンを確認できます。
az account list-locations -o table
接続文字列を使用して明示的なリージョンを設定できます。 接続文字列とその例に関する詳細情報。
次のステップ
関連リンク
アプリケーションで次の機能を有効にして、コード最適化を開始します。
問題が発生していますか? トラブルシューティング ガイドを確認してください