Application Insights SDK for Java の概要
このポストは、3 月 9 日に投稿された Introducing the Application Insights SDK for Java の翻訳です。
Java Web アプリケーションを公開する場合、ユーザーがそのアプリケーションをどのように使用しているか、アプリケーションがどのように動作しているかを明確に把握する必要があります。将来を見据えて最も効果的な計画を立てるためには、ユーザーがどのような機能を気に入っているのか、どのようなパターンで利用しているのか、またどのようなことで困難さを感じているのかなど、ユーザーの利用状況を十分に理解することが欠かせません。また、応答速度や高負荷時のパフォーマンスの変化など、アプリケーションのパフォーマンスが十分に保たれているかどうかも把握する必要があります。さらに、パフォーマンスの低下や例外の発生時にすぐさま通知が届くように設定したり、問題を診断する際に高度なフィルターや検索機能を使用してイベント トレースを調査したりできると便利です。
Visual Studio Application Insights を使用すれば、強力な利用状況分析、パフォーマンス監視、診断分析によって、そうしたアプリケーションに関するあらゆる情報を把握できます。Application Insights を使用するには、アプリケーションに SDK を追加します。Application Insights の Web ポータルに利用統計情報が送信され、メトリックやイベントを詳細に分析したり、必要なアラートを構成したりできるようになります。
利用統計情報は、サーバーや Web ページ、Windows Phone や Windows ストア アプリといったさまざまなクライアント アプリケーションから送信できます。使用する API は各プラットフォームで共通です。また、定期的に Web サイトに ping を送信する Web テスト サービスもあり、サイトが稼働していることや良好に応答していることを確認できます。
マイクロソフトは、先日開催された EclipseCon (英語) で Application Insights SDK for Java の概要を説明しました。Java Web アプリケーションに Application Insights をセットアップする際の標準的なプランは以下のとおりです。ただし、必ずしもこの内容にそのまま従う必要はありません。
追加するインストルメンテーション |
受け取る分析情報 |
サーバーの分析: SDK を Java Web アプリケーションに追加 |
サーバー側のメトリック (応答時間、要求数、ユーザー数)、パフォーマンス低下時のアラート |
クライアントの分析: Application Insights スクリプトを Web ページに追加 |
ページ閲覧数、ユーザー数とセッション数、回帰率、ブラウザーの種類 |
Web の可用性テスト |
応答時間のグラフ、サービス停止時のアラート |
利用統計情報のカスタマイズ – クライアント側のみ、サーバー側のみ、または両方 |
イベント、メトリック、例外などのカスタムの情報を送信して、アプリケーションの利用状況を追跡 |
Application Insights のログ アペンダーをログ フレームワークに追加 |
強力な詳細分析機能を使用して Application Insights ポータルからアプリケーションのログを直接確認 |
取得可能な Java アプリケーションの分析情報
アプリケーションの可用性、パフォーマンス、利用状況をあらゆる角度から完全に把握できるように、マイクロソフトでは取得可能な Java Web アプリケーションの分析情報を継続的に拡張しており、現時点では下記のことが可能です。
アプリケーションのパフォーマンスを監視: アプリケーションのパフォーマンスが良好であるか、何らかの不具合が発生していないかを確認できます。この情報は、SDK を Web プロジェクトに追加すると自動的に取得されます。
アプリケーションの利用パターンを分析: 普及度、利用状況、関心度の傾向を把握できます。Web ページに JavaScript スニペットを挿入すれば、最も注目を集めているページ、ユーザーのプロファイル、ユーザーが最も長時間滞在している箇所などを明らかにすることができます。
イベント、メトリック、例外のカスタムの利用統計情報を追跡: アプリケーションに数行程度のコードを挿入して利用統計情報用 API を使用すれば、ユーザーがアプリケーションで何をしているかを把握したり、問題の診断に役立てたりできます。
Application Insights ポータルでトレース ログを確認: ポータルには Application Insights から自動的にトレース ログが送信されるため、トレース ログの確認や検索ができます。それには、Application Insights アペンダーをログ フレームワーク構成に追加するだけです (Log4J および Logback をサポート)。
アプリケーションの正常性を監視: Web アプリケーションのデプロイ後、Web テストをセットアップして可用性と応答性を監視することができます。Application Insights は世界中のさまざまな場所から定期的に Web 要求を送信し、アプリケーションの応答が遅延したり、応答しなくなったりした場合にはアラートを発します。
Application Insights SDK for Java をプロジェクトに追加する
Eclipse でプロジェクトの開発作業を行っている場合は、簡単に Application Insights SDK for Java を動的な Web プロジェクトに追加できます。EclipseCon 開催週にリリース予定の最新バージョンの Azure Toolkit for Eclipse (英語) (Microsoft Open Technologies 作成) をインストールして、プロジェクトを右クリックし、[Configure Application Insights] を選択して、インストルメンテーション キーを入力します。この操作はこちらのガイド (英語) で手順を追って説明しています。
SDK を Java プロジェクトに追加する方法は、Maven や Gradle を使用する方法、手動で行う方法など、ほかにもいろいろあります。これらの方法の詳細については、こちらの記事 (英語) でご確認ください。
Java アプリケーションの計画立案、コード作成、ビルド、テスト、デプロイに Visual Studio Online を使用する
Visual Studio Online では、Eclipse や Jenkins などのユーザーが普段使用している Java 用のツールやサービスを補完する Java チーム向けのクラウド ホスト型ツール (英語) を提供します。
今後について
プロジェクトに SDK を追加した後は、ほかに必要なインストルメンテーションを追加して、Java アプリケーションの各種分析情報の取得にご活用ください。
参考資料を以下にご紹介します。
- Web アプリケーションの使用状況の追跡: Web ページにスクリプトを追加して、ページ閲覧数、ユーザー数、セッション数を追跡します。
- Application Insights で Java のトレース ログを確認する (英語): お好みのログ フレームワークからログを取得し、要求やページ ビュー イベントについて詳細に分析します。
- Application Insights API で利用統計情報をカスタマイズする (英語): ユーザーがアプリケーションで何をしているかを追跡します。
- Web サイトの可用性と応答性の監視: Web テストをセットアップします。
- Java Web アプリケーションで HTTP 要求を追跡する (英語): アプリケーションに送信された HTTP 要求に関する情報を確認します。
フィードバックのお願い
マイクロソフトでは、皆様からのフィードバックをお待ちしております。ご意見、ご要望、改善案などがございましたら、ぜひお気軽にお寄せください。
Comments
- Anonymous
March 17, 2015
あくまでAzure上で参照するための設定であって、普遍的に使えるわけではないのですね><