Application Insights とは
以下のログ情報を元に、「データ分析」「アプリケーションの状況把握」ができる機能です。
● Application Insights を有効にしていると Azure が勝手に取得してくれるログ情報
● 動作しているユーザのアプリケーションから Application Insights に送信されたログ(実装が必要)
何のために使うのか・何ができるのか
たとえば、パフォーマンス状況確認は、誰もが取得しているエラーログだけだと分析できません。
アプリケーション自前のログのみでは、情報として不十分なケースが多いです。そのため、集まったデータに対して kusto クエリ・ポータル画面などを使って、データ分析を行うことができます。
具体的な利用イメージ
利用イメージを順番通りに書いてみました。
● 「データ分析」「アプリケーションの状況把握」を目的として、どういう分析や把握をしたいか決める。
● Azure が勝手に取得してくれるログ情報には、どういうメトリックがあるか確認する。
● メトリックだけでは足りないと判断したら、アプリケーション内に Application Insights に送信するログ出力処理を実装する。
● 該当の AppService/Functions の画面から Application Insights を有効に設定する。(有効にすると、Azure 側のログ自動収集も始まる)
● アプリケーションを Azure 上にデプロイして、アプリケーションを動作させる。
● アプリケーションが動作すると、Application Insights 上にログ情報が溜まっていく。
● 溜まったログ情報を kusto クエリ・ポータル画面のメトリックなどで、確認・分析する。
メトリックとは
各種情報の小さい塊というイメージです。
たとえば、
・CPU 使用率
・関数実行回数
・50X エラー発生回数
などが、それぞれ情報として取得できます。
メトリックを活用して、過去データ分析ができます。
たとえば、アプリケーションの CPU 使用率はどの程度か、というのがグラフで見ることができます。
以上です。