Skip to content

Webサイトのモニター

概要とメリット(できること,UseCase)

  • 実ユーザーの体験をリアルタイムで可視化する機能(End User Monitoring/Real User Monitoringとも言われます)
  • JavaScriptビーコンでページロード時間、エラー、ユーザーアクションを自動収集
  • フロントエンドとバックエンドのトレースを統合し、問題の根本原因を特定
  • OS、ブラウザ、地域、デバイス別にパフォーマンスを分析可能
  • メトリック、トレースの監視だけでは把握できなかった実ユーザー環境での問題を検出

公式ドキュメントのリンク

https://www.ibm.com/docs/ja/instana-observability/latest?topic=instana-monitoring-websites

具体的なユースケース

End User MonitoringをInstanaで行う場合、WebアプリケーションにJavaScriptのコードを数行追記する必要があります。

必要なJavaScriptのコードの取得方法はドキュメントのインストールを参照してください。

ユースケース1: WebアプリケーションへのJavaScript埋め込みが困難な場合

背景・課題:

End User MonitoringをInstanaで行う場合、WebアプリケーションにJavaScriptのコードを数行追記する必要がありますが、以下のような理由でWebアプリケーションへの直接的なコード追加が困難な場合があります。 - レガシーシステムでソースコード修正が難しい - 複数のWebアプリケーションに一括で適用したい - デプロイプロセスが複雑で変更に時間がかかる

解決方法:

自動インスツルメンテーション機能を使うことで、Apache HTTPサーバーで埋め込み作業を代理で行うことが可能になります。 これにより、Webアプリケーション自体を変更せずに、基盤側の設定変更でJavaScriptを自動挿入できます。

参考リンク:

公式ドキュメント: https://www.ibm.com/docs/ja/instana-observability/latest?topic=websites-automatic-instrumentation

Qiita記事: https://qiita.com/iwashinat/items/d2a05186bca7cc627128

実運用での注意点・ベストプラクティス

JavaScriptビーコンの配置場所

公式ドキュメントでは基本的な設定方法は記載されているが、実際の配置場所については以下の点に注意が必要:

  • <head>タグ内のできるだけ早い位置に配置することを推奨
  • 他のJavaScriptライブラリよりも前に読み込むことで、ページ全体のパフォーマンスを正確に計測可能

FAQ

モダンWebアプリケーション(SPA: Single Page Application)でURLパラメータ(?id=123や?page=productsなど)によるページ切り替えを行う場合、Instana は別ページとして認識してくれるのか?

コミュニティBlogのSPAのURLパラメータ遷移をInstana EUMで正確に監視する方法を参照してください。