注記
Basic、Standard、および Enterprise プランは、2025 年 3 月 17 日に廃止期間に入りました。 詳細については、Azure Spring Apps の提供終了のお知らせを参照してください。
この記事の適用対象:✅ Java ✅ C#
この記事の適用対象:✅ Basic または Standard ✅ Enterprise
この記事では、Azure Spring Apps の診断機能を使用して Elastic (ELK) を使用してログを分析する方法について説明します。
次のビデオでは、Elastic を使用した Spring Boot アプリケーションの統一監視が紹介されています。
診断設定の構成
診断設定を構成するには、次の手順のようにします。
- Azure portalで、Azure Spring Apps インスタンスに移動します。
- [診断設定] オプションを選んでから、[診断設定の追加] を選びます。
- 設定の名前を入力し、[Send to partner solution]\(パートナー ソリューションに送信\) を選んだ後、[Elastic] とログを送信する Elastic のデプロイを選びます。
- [保存] を選択します。
注記
ログが出力されてから Elastic のデプロイに表示されるまでに、最大 15 分のギャップが生じる可能性があります。 Azure Spring Apps インスタンスが削除または移動された場合、操作は診断設定リソースに連鎖しません。 親である Azure Spring Apps インスタンスに対して操作を実行する前に、診断設定リソースを手動で削除する必要があります。 それ以外の場合、削除されたものと同じリソース ID を持つ新しい Azure Spring Apps インスタンスをプロビジョニングした場合、または Azure Spring Apps インスタンスを戻した場合、以前の診断設定リソースは引き続きそのインスタンスを拡張します。
Elastic を使用してログを分析する
Elastic on Azure のデプロイの詳細については、「
ログを分析するには、次の手順のようにします。
Azure portalの [Elastic deployment overview]\(エラスティック デプロイの概要\) ページで、Kibana を開きます。
Kibana の上部にある [Search]\(検索\) バーに、「Spring Cloud type:dashboard」と入力します。
結果から [ログ Azure] Azure Spring Apps ログの概要を選択します。
次のようなクエリを使用して、すぐに使えるAzure Spring Apps のダッシュボードを検索します。
azure.springcloudlogs.properties.app_name : "visits-service"
Discover で Kibana Query Language を使用してログを分析する
アプリケーション ログには、アプリケーションの正常性やパフォーマンスなどに関する重要な情報と詳細ログが記載されています。 ログを分析するには、次の手順のようにします。
Kibana の上部にある [Search]\(検索\) バーに「Discover」と入力し、結果を選択します。
Discover アプリで、まだ選んでいない場合は logs- インデックス パターンを選びます。
次のセクションのようなクエリを使うと、アプリケーションの現在と過去の状態を把握するのに役立ちます。
さまざまなクエリについて詳しくは、Kibana Query Language のガイドに関するページをご覧ください。
Azure Spring Apps からのすべてのログを表示する
Azure Spring Apps からのアプリケーション ログの一覧を、最初に表示された最新のログで時間順に並べ替えるには、Search ボックスで次のクエリを実行します。
azure_log_forwarder.resource_type : "Microsoft.AppPlatform/Spring"
Azure Spring Apps からの特定のログの種類を表示する
Azure Spring Apps からのアプリケーション ログの一覧を、最初に表示された最新のログで時間順に並べ替えるには、Search ボックスで次のクエリを実行します。
azure.springcloudlogs.category : "ApplicationConsole"
エラーまたは例外を含むログ エントリを表示する
エラーまたは例外を示す並べ替えられていないログ エントリを確認するには、次のクエリを実行します。
azure_log_forwarder.resource_type : "Microsoft.AppPlatform/Spring" and (log.level : "ERROR" or log.level : "EXCEPTION")
Kibana Query Language は、ログから分析情報を取得するのに役立つオートコンプリートと提案が提供されるので、クエリを作成するのに役立ちます。 クエリを使用してエラーを検出するか、クエリ用語を変更して特定のエラー コードまたは例外を検索します。
特定のサービスからのログ エントリを表示する
特定のサービスによって生成されたログ エントリを確認するには、次のクエリを実行します。
azure.springcloudlogs.properties.service_name : "sa-petclinic-service"
警告またはエラーを含む Config Server のログを表示する
Config Server からのログを確認するには、次のクエリを実行します。
azure.springcloudlogs.properties.type : "ConfigServer" and (log.level : "ERROR" or log.level : "WARN")
サービス レジストリのログを表示する
サービス レジストリからのログを確認するには、次のクエリを実行します。
azure.springcloudlogs.properties.type : "ServiceRegistry"
Elastic を使用した Azure Spring Apps からのログの視覚化
Kibana を使用すると、ダッシュボードおよび視覚化の充実したエコシステムで、データを視覚化できます。 詳細については、「ダッシュボードと視覚化」を参照してください。
サービスの全体的な正常性を評価できるように、ログのさまざまなログ レベルを表示しするには、次の手順のようにします。
Discover の左側にある利用可能なフィールドの一覧から、logs- インデックス パターンの下にある検索ボックスで「log.level」を検索します。
log.level フィールドを選びます。 log.level に関するフローティング情報パネルから、[Visualize]\(視覚化\) を選びます。
ここでは、左側のペインからさらにデータを追加したり、データを視覚化する方法に関する複数の提案から選択したりすることができます。