この章では、診断機能の使用方法について説明します。これには、アプリケーション・マネージャとIT技術スタッフが業務上の問題の根本原因分析を行うために使用できる強力な方法が備わっています。セッション・パフォーマンス・ブレークダウンがサポートされ、失敗したページやヒットがセッションに及ぼす影響、失敗した各ページの完全なコンテンツ、さらにオブジェクト、ページ・ビュー、セッションの関係などが表示されます。Webサービスを診断して関数コールの失敗を調査することも可能です。
診断機能では、問題が特定されると、ユーザーがRUEIの大規模なデータ構造をドリルダウンして、その問題がWebサイトのビジターおよびWebサービスに及ぼす影響を評価するとともに、考えられる原因を直接見極める手段を得ることができます。
エラー記録機能
これまでに説明した情報に加えて、RUEIでは、監視対象Webサイトのビジターがどのようなエラー・メッセージをいつ受け取ったかを正確に追跡することができます。この機能を使用してアプリケーションの失敗を再現することで、Webページで不備や問題のある箇所を正確かつ早急に除去できます。
セッション・レポートの概要
ユーザー・セッションに関する情報は、診断機能においてはユーザー・レコードとしてレポートされます。情報は5分間隔でレポートされることを理解してください。IPアドレスやユーザーIDなどのセッション関連プロパティは、実質的には5分間隔の最後に取得されたスナップショットです。これらのプロパティの値はその5分間内では変動していた可能性がありますが、その期間の最後の値がレポートされることに注意してください。
診断機能の使用方法
必要な診断情報を検索する手順は、次のとおりです。
「Browse data」を選択し、開始するグループを選択します。診断情報は、「All sessions」グループ、「Service test」グループ、「Failed URLs」グループ、「Failed pages」グループ、「Failed functions」グループ、およびアクセラレータ固有のグループ(Oracle E-Business SuiteやSiebelなど)について使用可能です。目的の診断オプションをクリックします。選択したグループがオプションの名前に反映されることに注意してください。たとえば、「Session diagnostics」、「Page diagnostics」または「URL diagnostics」となります。図4-1に示すような診断パネルが表示されます。
カレンダ・コントロール(2.5項「カレンダの使用方法」を参照)を使用して、目的の期間を選択します。表示範囲としては1日(または未満)を選択する必要があります。この制限外で検索しようとするとエラーが発生します。再生コンテンツの有無は、対応するコレクタの保存ポリシーによって異なります(13.7項「コレクタのデータ保存ポリシーの定義」を参照)。
検索機能を使用して、目的のユーザー・レコードを検索します。使用可能な基準は、選択したグループによって異なります。使用可能な検索基準を表4-1に示します。各基準メニューでは最初の100項目しか表示されないことに注意してください。したがって、目的の項目が表示されていない場合は、該当する基準フィールドの右側の「Search」アイコンを使用して、項目を検索して選択します。「Exit diagnostics」アイコンを選択すると、診断機能を開始する直前のデータ・ブラウザに戻ります。
表4-1 診断の検索基準
データ・ブラウザ・グループ | All sessions | Service tests | Failed pages | Failed URLs | Slow URLs | E-Business Suite | Siebel | PeopleSoft | JD Edwards |
---|---|---|---|---|---|---|---|---|---|
アプリケーション名 |
? |
? |
? |
? |
? |
? |
? |
||
User ID |
? |
? |
? |
? |
? |
? |
? |
||
Client IP address |
? |
? |
? |
||||||
Service name |
? |
||||||||
Beacon name |
? |
||||||||
Object URL |
? |
? |
|||||||
Object delivery |
? |
||||||||
Object URL |
? |
||||||||
Client network |
|||||||||
EBS responsibility |
? |
||||||||
Siebel method |
? |
||||||||
PeopleSoft node name |
? |
||||||||
JD Edwards form |
? |
オプションとして、「Add more filters」機能を使用して追加の検索基準を指定できます。最初の検索基準と同じく、追加の検索フィルタ・オプションも選択したグループによって異なります。検索に指定したすべての基準が一致しないと、ユーザー・レコードはレポートされません。厳密な検索が行われることに注意してください。すべての文字列はリテラルとみなされます。ワイルドカードは使用できません。
様々な診断グループについて、一致したユーザー・レコードのレポート順序を「Search result order」機能で指定することもできます。次に、「Search」をクリックします。検索結果がウィンドウの主要部に表示されます。例を図4-2に示します。
上部にあるツールバーのコントロールを使用して、結果ページ間で移動できます。1ページ当たり最大で100ユーザー・レコードがリストされます。表示リストの特定のユーザー・レコードをクリックして選択できます。
オプションとして、「Order」メニューを使用して、一致したユーザー・レコードがリストされる順序を指定します。また、「Dimension level」メニューおよび「Value」メニューを使用すると、表示リストにさらにフィルタを適用することができます。次に、「Add」をクリックします。「Dimension level」メニューのオプションは、選択したグループによって異なります。
図4-2に示すユーザー・レコードのコンテキスト・メニューで「Export session」オプションを選択できることに注意してください。この機能の使用方法の詳細は、4.4項「すべてのセッション情報のエクスポート」に記載されています。
ユーザー・レコードを選択した後、ウィンドウの左側のパネルにある「View」の部分に、選択したユーザー・レコードの情報を表示できます。「Session」の下の「Pages」、「Object」および「Info」項目を使用して、選択したユーザー・レコードに関する特定の情報を表示します。例を図4-3に示します。
セッション・ページはグループ分けされており、展開すると関連するオブジェクトが表示されます。選択したユーザー・レコード内に記録されたページ(およびその時間)の概要が表示されます。アイコンによって、処理が遅いオブジェクトまたは失敗したオブジェクト、ページ・ロード満足度、キー・ページかどうか、再生コンテンツの有無が示されます。Replay Viewerの使用方法は、4.2項「ユーザー・セッションの再生」に記載されています。
ツールバーの「Include/Exclude spurious objects」アイコンを使用すると、レポートされるページに直接関連していないヒットをオブジェクトの表示リストに含めるかどうかを制御できます。この機能は、ロード時間が非常に長くかかる問題のオブジェクトを特定するときに特に役立ちます。通常、このようなオブジェクトにはページが関連していないため、セッション・ページ・レポートには表示されません。
「Export session pages」コマンド・ボタンを使用すると、現在選択されているユーザー・レコードのサマリーをMicrosoft Excelにエクスポートできます。この機能の使用方法の詳細は、4.3項「Microsoft Excelへのセッション・ページのエクスポート」に記載されています。
パネルの「View」の下にある「Pages」オプションまたは「Objects」オプションをクリックすると、ビジターが表示したページのサマリー、またはそれらのページ内のオブジェクトを確認できます。例を図4-4に示します。
表示されるページ履歴では、ページのすべてのコンテンツの他に、サーバーやクライアントで受信されたメッセージが基づくHTMLコードも表示されます。レポートされるコンテンツは、HTTPプロトコル項目に対して現在定義されているマスキング・オプションによって変化することに注意してください。ページまたはURLのアプリケーション関連およびセッション関連の詳しい情報は、「Info」オプションで表示されます。例を図4-5に示します。
次に、選択したユーザー・レコードの右にある「Remove」アイコンをクリックします。図4-2に示す診断ウィンドウに戻ります。ここで、他のユーザー・レコードを選択してドリルダウンできます。
診断機能での機密情報のマスキング
前述のように、診断機能での情報(ヘッダーやURL情報など)の表示または非表示は、適切なHTTPプロトコル項目のマスキング機能によって制御できます。この詳細は、13.7項「コレクタのデータ保存ポリシーの定義」に記載されています。
表示しているページの横に「Replay」アイコンがある場合には、それをクリックすると完全なユーザー・セッションを再生できます。こうすることで、ビジターがセッション中に表示した各ページとレポートされたエラー・メッセージを確認できます。例を図4-6に示します。
再生の詳細は、メイン・ウィンドウと同じサイズの新しいウィンドウに表示されます。選択したユーザー・レコード内でページの「Replay」アイコンをクリックして選択した場合、表示されるページ履歴は選択したページから開始します。
ページ表示の下のコントロールを使用して、ページ履歴をナビゲートできます。「Page information」セクションには、現在表示されているページのロード満足度、キー・ページかどうか、およびエラーの有無が示されます。
ページ・イベントのレポート
表示されたページにHTTPフォーム要素が含まれる場合、フォーム要素とビジターの応答が「Page events」パネルにレポートされます。名前のない要素は"NO_NAME_number"としてレポートされます(numberは名前のない要素ごと1つずつ増えます)。非表示のフォーム要素もレポートされます。フォーム要素に対するビジターの応答は、セッション・ページ表示履歴の次のページのリクエスト本文から導出されることに注意してください。したがって、ビジターが、リクエスト・ページとレスポンス・ページの間で別のページにコンテキストを切り替えた場合、ユーザーの応答は抽出できずレポートされません。
図4-6の下部のステータス・バーには、セッション・ユーザーID、ページごとに記録されたタイムスタンプ、ロード時間、オブジェクト数に関する情報が表示されます。また、静的ページの場合には、レポートされたページがライブ・ソース(アプリケーション・サーバーなど)から取得されていることも示されます。
ページ・コンテンツの表示
ツールバーの「HTTP content」コマンド・ボタンを使用すると、現在選択されているページの実際のリクエスト・コンテンツとレスポンス・コンテンツを表示できます。例を図4-7に示します。
ページ・コンテンツ内のリンクをクリックすると外部のJavaScriptファイルも表示できることに注意してください。このようなファイルのレポートされるコンテンツは、ライブ・ソース(たとえばアプリケーション・サーバー)から取得されます。
静的ページ・コンテンツの表示
表示される表示履歴でページの横に「Replay」アイコンがない場合は、ページのコンテンツがないことを意味します。これは、データ保存制限のために情報が期限切れになったため、または表示したページが静的ページだったためです。静的ページの場合は、静的ページのコンテンツを表示できます。表示履歴で静的ページの直前または直後のページをハイライト表示し、そのページから静的ページのコンテンツを表示します。
静的ページのオブジェクトについてレポートされるコンテンツは、ライブ・ソースから取得されることに注意してください。このため、なんらかの理由でライブ・ソースが使用できないと、ページのコンテンツが正しくレポートされないことがあります。また、データ・マスキングやJavaScript実行ルールは、ライブ・ソースから取得されるページ・コンテンツには適用されません。ページ・コンテンツは現状のままで表示されます。静的ページがクライアントでキャッシュされていると、以前の任意のセッションにおける完全なページ・フェッチがプレビューに使用されることに注意してください。したがって、監視対象Webサイトの構成によって異なりますが、ページはビジターが実際にページを見た後で変更されている可能性があります。たとえば、最新の株式相場をリストするページなどです。ライブ・ソースのデータがレポートされるときは、「Replay」ステータス・バーに示されます。
Replay ViewerでのJavaScriptの実行
ビジターが表示したページに、インラインJavaScriptコードが含まれることがあります。アプリケーション定義機能を使用して、このJavaScriptコードの実行を再生機能でどのように扱うかを指定できます。この詳細は、8.2.17項「JavaScript再生実行の制御」に記載されています。また、スイート(SiebelおよびPeopleSoftなど)では、Replay Viewerでのレポートを最適化するJavaScriptの実行ルールが事前構成されていることに注意してください。
現在選択しているセッション内のページのサマリーをMicrosoft Excelにエクスポートできます。これを行う手順は、次のとおりです。
前に説明した手順を使用して目的のセッションを選択します。「Export session pages」コマンド・ボタンをクリックします。ブラウザの構成方法によって異なりますが、ファイルを直接開くツール(デフォルトはMicrosoft Excel)の指定を求められるか、定義済のデフォルトの場所にファイルがすぐに保存されます。
Microsoft Excelで、生成されたファイルを表示して編集できます。例を図4-8に示します。
エクスポートされたページ表示履歴とセッション・サマリーを使用して、一連のリアルユーザー・セッションをまとめることができます。たとえば、テストまたはパフォーマンス分析のベースとして使用できます。
セッション情報の表示だけでなく、完全なセッション・コンテンツを外部ユーティリティにエクスポートして、詳しい分析や他のデータとの統合を行うことができます。たとえば、この方法を利用すると、完全なリアルユーザー・セッションに基づいてテスト・スクリプト生成を行うことができます。Oracle Application Testing Suite(ATS)などのテスト・プラットフォームを構成すると、アプリケーションで最もよく発生する使用シナリオに対して自動テスト・スクリプトを簡単に生成できます。
また、この機能を使用して高性能の根本原因分析をサポートすることもできます。アプリケーションまたは運用のスペシャリストに完全なユーザー・セッション情報を提供することができ、珍しい問題や切り分けにくい問題を特定するために役立ちます。エクスポートされたデータの機密情報は、HTTPプロトコル項目のマスキング機能で定義される動作に応じてマスキングされます。この詳細は、13.5項「ユーザー情報のマスキング」に記載されています。
セッション情報をエクスポートする手順は、次のとおりです。
目的のセッションを探して、コンテキスト・メニューで「Export session」オプションを選択します。図4-9にこれを示します。
または、再生機能で「Session」メニューを選択し、「Export session」オプションを選択します。いずれの場合も、選択したセッションのエクスポートの確認を求めるダイアログが表示されます。
エクスポートされるデータに機密情報が含まれる可能性があることを理解してください。セッションのコンテンツをよく確認して、機密情報が正確にマスキングされるようにすることをお薦めします。選択したセッションのエクスポートを確認するには、「Yes」をクリックします。
ブラウザの構成方法によって異なりますが、zipファイルの保存場所の指定を求められるか、定義済のデフォルトの場所にファイルがすぐに保存されます。
重要:
セッション・エクスポート・ファイルを正しく作成するためには、次の点を確認する必要があります。
エクスポートされるセッションが、「Full Session Replay」(FSR)設定よりも古くないこと(13.7項「コレクタのデータ保存ポリシーの定義」を参照)。
URL接頭辞のマスキング設定が「Complete logging」と指定されていること(13.5項「ユーザー情報のマスキング」を参照)。
また、エクスポートされたコンテンツ・ファイル(次の項を参照)が存在することを確認してから、エクスポートされたRUEIセッションを外部ユーティリティにインポートすることをお薦めします。
エクスポート・データの構造について
エクスポートされるセッションのzipファイルには次のファイルが含まれます。
data.tab
: コレクタのログ・ファイルから抽出された、選択したセッションの直接(RAW)ヒット情報が含まれます。
content_
hitno
.tab
: 指定されたヒットの完全な(RAW)コンテンツ情報が含まれます。data.tab
ファイル内のコンテンツを含む各ヒットに対して1つのファイルがあります。たとえば、3番目のヒットと6番目のヒットにコンテンツがある場合には、2つのファイルcontent_3.tab
とcontent_6.tab
が作成されます。ヒット・ファイルの例を図4-10に示します。
ファイルの最初の行(ここでは589 68 313 221)には4つの整数が含まれ、それぞれがリクエスト・ヘッダー、リクエスト本文、レスポンス・ヘッダー、レスポンス・本文の長さ(バイト単位)を表します。また、このファイルでユーザーのパスワードがマスキングされている方法にも注意してください。
注意: エクスポート・セッション・ファイルを作成する基礎として使用されるログ・ファイルも、RUEIによって内部で使用されます。これらのファイルの形式と内容は予告なしに変更される場合があります。 |
「URL diagnostics」グループ(3.2.4項「「URL Diagnostics」グループ」を参照)、「suite diagnostics」グループ(3.2.5項「「Suite」グループ」を参照)、およびセッション診断機能(4.1項「概要」を参照)は、選択した機能URLや特定のディメンションから外部診断ユーティリティへのクリックアウトをサポートしています。現時点でサポートされている外部ユーティリティを表4-2に示します。
表4-2 サポートされるクリックアウト・ツール
ユーティリティ | 説明 |
---|---|
AD4J 10g脚注1 |
Oracle Application Diagnostics for Java(AD4J)は、Oracleミドルウェア用のOracle診断パックに含まれます。オーバーヘッドの少ない監視および診断の機能を提供し、Javaアプリケーションの可用性とパフォーマンスを向上します。 この機能を使用するには、組織においてAD4J 10g R4がインストールされていることが必要です。 |
ビジネス・トランザクション管理脚注2 |
Oracle Business Transaction Management(BTM)は、ビジネス・トランザクションをリアルタイムに視覚化するユーティリティです。これにより、組織はトランザクション・エラー、障害およびボトルネックを特定して解決するか、または、迅速に対応して、隔離した問題が広範囲な機能停止に発展するのを回避できます。 |
CAMM 10g脚注1 |
Oracle Composite Application Monitor and Modeler(CAMM)は、組織で実行している高度に分散されたJava EEおよびSOAアプリケーションを監視できるユーティリティです。 この機能を使用するには、組織においてCAMM 10g R4がインストールされていることが必要です。 |
EBS>脚注3 |
EBSデプロイメントについてのサーバーまたはユーザー・レポート機能をユーザーが使用できます。 |
EMGC 11脚注1 |
インストールされているOracle Enterprise Managerミドルウェアおよびアプリケーション管理パックによって異なりますが、次の機能が使用できます。
|
My Oracle Support脚注4 |
レポートされる特定のエラーについて、関連情報をOracleカスタマ・サービスのWebサイト(My Oracle Support)で検索します。たとえば、ORA-12154またはSBL-UIF-00271などについて検索します。 この機能を使用するには、My Oracle Supportに登録している必要があります。詳細は次のサイトを参照してください。
|
Siebel脚注5 |
Siebelデプロイメントについてのサーバー概要またはユーザー検索機能をユーザーが使用できます。 |
脚注1 URL diagnosticsグループおよびSession diagnosticsグループでのURLディメンション。
脚注2 URL diagnosticsグループおよびSession diagnosticsグループでの、BTMサービス・ディメンションのBTMによって識別されるページ・オブジェクトおよび動的オブジェクト。
脚注3 EBSグループおよびSession diagnosticsグループでのアプリケーション名、ページURL、EBSスイート名およびユーザーID。ユーザーIDはユーザー・レポート機能に送られ、他のすべての項目はサーバー・レポート機能に送られます。
脚注4 コンテンツ・エラーのディメンション。クリックアウトを使用できるのは標準エラー(ORA-06512など)のみであることに注意してください。ユーザー定義のコンテンツ・エラー(「在庫切れ」など)では使用できません。
脚注5 SiebelグループおよびSession diagnosticsグループでのアプリケーション名、ページURL、Siebelスイート名およびユーザーID。ユーザーIDはユーザー検索機能に送られ、他のすべての項目はサーバー概要機能に送られます。
クリックアウト機能の構成
RUEIからこれらのユーティリティへのアクセスを構成する手順は、次のとおりです。
「Configuration」タブ→「General」→「Advanced settings」→「Clickout settings」の順に選択します。このオプションを使用できるのは管理者のみです。「Add new item」または既存の外部ユーティリティ定義をクリックします。図4-11に示すようなダイアログが表示されます。
「Clickout tool」メニューを使用して、インタフェースを構成する外部ユーティリティを選択します。サポートされている外部ユーティリティは表4-2に示しています。このダイアログに表示される他のフィールドは、選択したユーティリティによって異なることに注意してください。
「Host」フィールドを使用して、選択した外部ユーティリティにアクセスする方法を指定します。プロトコル・スキーム(http://
など)は含めないでください。たとえば、ruei-camm.oracle.com
と指定します。
「Port」フィールドを使用して、目的のポート番号を指定します。指定できるポート番号は1つのみです。ワイルドカード文字(*)は指定できません。
「Extensions」入力フィールドを使用して、クリックアウトを行えるオブジェクト・ファイルの拡張子を指定します。「Add」ボタンを使用して、追加の拡張子を指定します。「Also allow no extension」チェック・ボックスを使用すると、ファイル拡張子が関連しないヒットについてクリックアウトを可能にするかどうかも指定できます。
「Advanced」タブをクリックし、「Protocol」フィールドを使用して、選択したユーティリティとの接続にHTTPとHTTPSのどちらを使用するかを指定します。デフォルトでは、HTTPが使用されます。
「Regular expression」フィールドと「Replace」フィールドを使用して、置き換えられる外部アプリケーションに渡すURLの一部を指定します。正規表現の詳細は、My Oracle Support Webサイトにあるナレッジベースの記事を参照してください。これは次の場所から入手できます。
https://support.oracle.com/CSP/ui/flash.html
次に、「Save」をクリックします。これらの設定への変更は即座に適用されます。
アプリケーションおよびスイートの構成
目的のアプリケーションごとに、クリックアウトをサポートする機能URLを指定します。この詳細は、8.2.16項「「URL Diagnostics」グループ内でのレポートの制御」に記載されています。
Oracle E-Business Suite(EBS)スイートおよびSiebelスイートの場合、ディメンションでクリックアウト機能を使用するためには、エンタープライズ名をスイートの構成に含めて指定する必要があります。この詳細は、10.1項「スイートの使用」に記載されています。
クリックアウト機能へのアクセス
データ・ブラウザ項目のクリックアウト機能は、項目のコンテキスト・メニューから選択できます。使用できる正確なオプションは、データ・ブラウザ・グループ、選択したディメンション、および定義されたクリックアウト設定によって異なります。例を図4-12に示します。