Oracle Fusion Middlewareには、サーバーとアプリケーションのパフォーマンスの監視に使用できる各種テクノロジおよびツールが用意されています。監視はパフォーマンス・チューニングにおける重要なステップです。監視を行うことで、サーバー・アクティビティの評価、傾向の観察、システムのボトルネックの診断、パフォーマンスに問題のあるアプリケーションのデバッグ、およびシステムのチューニングに役立つデータの収集が可能になります。
この章の内容は次のとおりです。
Oracle Fusion Middlewareをインストールして構成した後、グラフィカル・ユーザー・インタフェースまたはコマンドライン・ツールを使用して環境を管理できます。
Oracle Fusion Middleware環境の管理には、次のツールが使用できます。
Oracle Enterprise Manager Fusion Middleware Control。4.2項を参照してください。
Oracle WebLogic Server管理コンソール。4.3項を参照してください。
Oracle WebLogic診断フレームワーク(WLDF)。4.4項を参照してください。
Oracle WebLogic Scripting Tool(WLST)。4.5項を参照してください。
DMSスパイ・サーブレット。4.6項を参照してください。
Oracle Process Manager and Notification Server。4.7項を参照してください。
Oracle Enterprise Manager 11g Grid Control。4.8項を参照してください。
オペレーティング・システムのパフォーマンス・コマンド。4.9項を参照してください。
ネットワーク・パフォーマンス・モニタリング・ツール。4.10項を参照してください。
特定の手順でファイルの編集が必要になる場合以外は、構成ファイルを直接編集するのではなく、これらのツールを使用してすべての管理タスクを実行します。ファイルを編集すると、設定の一貫性が失われ、問題が発生する可能性があります。
Fusion Middleware ControlとOracle WebLogic Server管理コンソールはどちらも、Oracle Fusion Middleware環境の監視および管理に使用できるグラフィカル・ユーザー・インタフェースです。一部の作業はどちらのツールでも実行できますが、それ以外の作業にはいずれか一方のツールしか使用できません。
WebLogic Server管理コンソールを使用したドメインの監視の詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。
メトリックは、シナリオをパフォーマンス目標と比較評価するための基準です。パフォーマンス・メトリックを使用すると、ボトルネックの特定やリソースの可用性に関する問題の検出が可能になります。また、コンポーネントをチューニングしてスループットおよびレスポンス時間を改善することもできます。パフォーマンス基準を決定したら、パフォーマンス目標を定量化するためのメトリックを測定します。
たとえば、レスポンス時間、スループットおよびリソース使用率をメトリックとして使用するとします。各メトリックのパフォーマンス目標となるのは、許容される値です。メトリックの実際の値を目標と照合し、パフォーマンス目標に達しているのか、あるいはパフォーマンス目標を上回っているのか、下回っているのかを確認します。
Oracle Fusion MiddlewareのコンポーネントやアプリケーションをFusion Middleware Controlで管理または監視する場合は、そのコンポーネントまたはアプリケーションの現在のパフォーマンスを詳しく分析するパフォーマンス・メトリックが使用されます。多くの場合、これらのメトリックは対話型グラフの形式で表示されますが、表形式で表示されることもあります。パフォーマンス・メトリックの使用や対比は、監視対象となるコンポーネントまたはアプリケーションの「パフォーマンス・サマリー」ページから行うことをお薦めします。
この後の項では、サーバーおよびアプリケーションのパフォーマンスの監視に使用できるOracle Fusion Middlewareのテクノロジおよびツールについて概説します。Oracle Fusion Middlewareを初めて使用する場合や、「パフォーマンス・サマリー」ページを使用した環境の監視について詳しい情報が必要な場合は、『Oracle Fusion Middleware管理者ガイド』のOracle Fusion Middlewareのパフォーマンスの表示に関する項を参照してください。また、Fusion Middleware Controlオンライン・ヘルプには、管理および監視のページで使用できる個々のパフォーマンス・メトリックの定義とその他の情報が記載されています。4.2.1項「Fusion Middleware Controlを使用したパフォーマンス・メトリックの表示」を参照してください。
Fusion Middleware Controlは、ファームの監視および管理に使用できるWebブラウザベースのグラフィカル・ユーザー・インタフェースです。Fusion Middleware Controlでは、ファーム、ドメイン、サーバー、コンポーネントおよびアプリケーションについて、幅広いパフォーマンス・データと管理機能がWebベースの個別のホームページにまとめられています。The Fusion Middleware Controlのホームページでは、最も重要な監視データおよび最も使用頻度の高い管理機能を各自のWebブラウザから簡単に検索できます。
さらに、Fusion Middleware Controlには一連のMBeanブラウザが用意されています。これを使用すれば、WebLogic Serverまたは選択したアプリケーションのMBeanを参照して、特定の監視作業や構成作業を実行できます。
関連項目: 『Oracle Fusion Middleware管理者ガイド』のOracle Enterprise Manager Fusion Middleware Controlの使用開始に関する項 |
Fusion Middleware Controlを使用すると、次のことが行えます。
単一のFusion Middlewareファームの監視および管理
ファームのすべての要素(デプロイ済アプリケーションと次のようなFusion Middlewarコンポーネントを含む)の監視
WebLogicドメイン
クラスタおよび管理対象サーバー
SOAコンポーネント
Web Center
Webキャッシュ
Oracle HTTP Server
Oracle Identity Management
デフォルトのパフォーマンス・メトリックを使用した、各ターゲットの状態およびパフォーマンスの監視
Oracle WebLogic ServerのCPU使用率、ヒープ使用率、ワーク・マネージャ、JMSサーバー、JDBCおよびJTAの使用率の監視
ヒープ使用率とヒープ以外の使用率の比較、ガベージ・コレクションおよびスレッド・パフォーマンスの観点から見た、JVMのパフォーマンスの監視
WebLogic ServerにデプロイされたアプリケーションおよびWebサービスの監視
使用可能なサーブレット、JSPおよびEJBについての各種アプリケーション・メトリックと、フォルト、呼出しおよび違反についてのWebサービス・メトリックの監視。このようなメトリックには、ターゲットのホームページからアクセスできます。
管理者がパフォーマンスおよび診断の問題を監視できる、カスタマイズ可能な「パフォーマンス・サマリー」ページへのアクセス。これらのグラフは、自分のドメインに関係のある内容が表示されるように変更できます。グラフにターゲット、つまりコンポーネントを追加して、1つのグラフで2つのターゲットのパフォーマンス情報を比較することも可能です。
関連項目: 「パフォーマンス・サマリー」ページを使用した環境の監視の詳細は、『Oracle Fusion Middleware管理者ガイド』の、Oracle Fusion Middlewareのパフォーマンスの表示に関する項を参照してください。 |
Oracle Fusion MiddlewareのコンポーネントやアプリケーションをFusion Middleware Controlで管理または監視する場合は、通常、そのコンポーネントまたはアプリケーションの現在のパフォーマンスを詳しく分析するパフォーマンス・メトリックが使用されます。多くの場合、これらのメトリックは対話型グラフの形式で表示されますが、表形式で表示されることもあります。パフォーマンス・メトリックの使用や対比は、監視対象となるコンポーネントまたはアプリケーションの「パフォーマンス・サマリー」ページから行うことをお薦めします。
個々のパフォーマンス・メトリックの定義を調べるには、Fusion Middleware Controlオンライン・ヘルプを使用します。この情報にアクセスする方法は2つあります。
Fusion Middleware Controlオンライン・ヘルプでメトリックを参照するか、検索します。
Oracle Fusion Middlewareコンポーネントまたはアプリケーションの「パフォーマンス・サマリー」ページに移動し、次の操作を実行します。
「メトリック・パレットの表示」をクリックします。
コンポーネントまたはアプリケーションに対して使用可能なメトリックのリストを参照し、個々のメトリックを見つけます。
メトリックの名前を右クリックし、コンテキスト・メニューから「ヘルプ」を選択します。
アプリケーションの実行に時間がかかる、アプリケーションがハングしている、などの問題が発生した場合は、特定のターゲットのパフォーマンス・メトリックなど、さらに詳しいパフォーマンス情報を参照して、問題の詳細を確認することができます。
Oracle Fusion Middlewareでは、実行時のパフォーマンスが絶えず自動的に測定されます。パフォーマンス・メトリックは自動的に有効になります。パフォーマンス・メトリックを収集するためにオプションを設定したり、追加構成を行ったりする必要はありません。履歴データを参照する必要がある場合は、Oracle Enterprise Manager Grid Controlの使用を検討してください。詳細は、『Oracle Enterprise Manager概要』のミドルウェア管理に関する項を参照してください。
Oracle WebLogic Server管理コンソールは、Oracle WebLogic Serverドメインの管理に使用する、Webブラウザ・ベースのグラフィカル・ユーザー・インタフェースです。これは、管理サーバーへのネットワーク・アクセスでサポートされるWebブラウザからアクセスできます。
関連項目: WebLogic Serverコンソールの使用の概要は、『Oracle Fusion Middleware管理者ガイド』のOracle WebLogic Server管理コンソールの使用開始に関する項を参照してください。 |
WebLogic Server管理コンソールを使用すると、次のことが行えます。
WebLogic Serverインスタンスの構成、起動および停止
WebLogic Serverクラスタの構成および監視
データベース接続(JDBC)やメッセージング(JMS)といったWebLogic Serverサービスの構成および監視
セキュリティ・パラメータの構成(ユーザー、グループおよびロールの作成や管理など)
Java EEアプリケーションの構成およびデプロイ
サーバーおよびアプリケーションのパフォーマンスの監視
サーバーおよびドメインのログ・ファイルの表示
アプリケーション・デプロイメント・ディスクリプタの表示
ランタイム・アプリケーション・デプロイメント・ディスクリプタの選択した要素の編集
Oracle WebLogic Serverは、Java Management Extensions(JMX)サーバー実装を含んでおり、独自の管理Bean(MBean)のセットを提供します。この章で説明するOracle管理ツールは、WebLogic Serverが提供するMBeanを使用して、WebLogic Serverリソースの構成、監視および管理を可能にしています。
WebLogic Serverコンソールに関するその他のリソースを次に示します。
各サマリー表の内容の詳細は、WebLogic管理コンソール・オンライン・ヘルプの「サーバーの監視」を参照してください。
WebLogic Serverを使用したドメインの監視の詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverパフォーマンスおよびチューニング』を参照してください。
Oracle Technology Network(http://www.oracle.com/technology/index.html
)では、WebLogic Serverの製品ダウンロード、記事、サンプル・コード、製品ドキュメント、チュートリアル、ホワイト・ペーパー、ニュース・グループ、その他の重要なコンテンツを利用できます。
WebLogic診断フレームワーク(WLDF)は、サーバーやアプリケーションで生成された診断データの収集が可能な監視および診断用のフレームワークです。WLDFは、データを収集して、ログ・レコード、データ・イベント、取得したメトリックなどの各種ソースに格納するように構成できます。
WLDFには、データの収集および分析用のコンポーネントがいくつかあります。
データ・クリエータ - WLDFコンポーネント全体に分散されるデータ・パブリッシャおよびデータ・プロバイダ。
診断イメージ・キャプチャ: 障害発生後の分析に使用できる診断スナップショットをサーバーから生成します。
アーカイブ: サーバー・インスタンスとアプリケーションからデータ・イベント、ログ・レコードおよびメトリックを取得し、永続化します。
インスツルメンテーション: WebLogic Serverインスタンスとその上で稼働しているアプリケーションに診断コードを追加し、コード内の指定した場所で診断処理を実行します。インスツルメンテーション・コンポーネントは、診断コンテキストをリクエストに関連付けて、システムを通過するリクエストの追跡ができるようにするための手段となります。
ハーベスタ: WebLogic Server MBeanやカスタムMBeanなどのランタイムMBeanからメトリックを取得します。取得したメトリックは、アーカイブしておき、後で履歴データを参照する際にアクセスすることができます。
監視と通知: サーバーおよびアプリケーションの状態を監視し、監視内容の中に設定された条件に基づいて通知を送信するための手段となります。(監視ルールに従って監視できるのは、ログ・データ、インスツルメンテーション・コンポーネントのイベント・データ、またはハーベスタによって取得されるデータ・プロバイダのメトリック・データです。監視マネージャでは、複数の監視ルールで構成される監視内容を管理できます。)
ロギング・サービス: サーバー、サブシステムおよびアプリケーションのイベントを監視するためのログを管理します。
これらのコンポーネントの関係を図4-1に示します。
フレームワークのコンポーネントはすべて、サーバー・レベルで機能し、サーバーの範囲のみを認識しています。すべてのコンポーネントが完全にサーバー・プロセス内部に存在し、サーバーの標準的なライフサイクルに関与します。フレームワークのアーティファクトはすべて、サーバー単位で構成され、格納されます。
注意: WebLogic診断フレームワーク、およびOracle Fusion Middlewareコンポーネントの監視におけるWebLogic診断フレームワークの利用方法の詳細は、『Oracle Fusion Middleware Oracle WebLogic Server診断フレームワークの構成と使い方』を参照してください。 |
Oracle WebLogic Scripting Tool(WLST)は、Oracle WebLogic Serverドメインの作成、管理および監視に使用するコマンドライン・スクリプト環境です。これは、Javaのスクリプト・インタープリタであるJythonがベースとなっています。ローカル変数、条件変数、フロー制御文などのJythonの標準機能のサポートのほかに、WLSTには、Oracle WebLogic Serverに固有のスクリプト関数(コマンド)セットが用意されています。Jythonの言語構文に従うことで、必要に応じてWebLogicのスクリプト言語を拡張できます。
WLSTのコマンドは、次のいずれかの方法で呼び出すことができます。
コマンドラインでの対話的な呼出し
スクリプト・モードでのファイルへの指定
Javaコードへの埋込み
関連項目:
|
Oracle SOA Suite、Oracle Platform Security Services(OPSS)、Oracle Fusion Middleware監査フレームワーク、MDSといった多くのコンポーネントや、SSL、ロギングなどのサービスには、カスタムWLSTコマンドが用意されています。
これらのカスタムWLSTコマンドを使用するには、コンポーネントがインストールされているOracleホームからWLSTを起動する必要があります。詳細は、『Oracle Fusion Middleware管理者ガイド』のカスタムWLSTコマンドの使用に関する項を参照してください。
WLSTには、Oracle WebLogic Server用のコマンドに加えて、システム・コンポーネントの監視および管理を目的とするコマンドのサブセットもあります。システム・コンポーネント用のコマンドは次のとおりです。
startproc
(componentName [, componentType] [, componentSet): 指定されたコンポーネントを起動します。
stopproc
(componentName [, componentType] [, componentSet): 指定されたコンポーネントを停止します。
status
(componentName [, componentType] [, componentSet): 指定されたコンポーネントのステータスを取得します。
proclist()
: コンポーネントのリストを取得します。
dumpMetrics
([servers,] [format]): 使用可能なメトリックを内部形式、PDML形式またはXML形式で表示します。
displayMetricTables
([metricTable_1], [metricTable_2], [...,] [servers] [variables]): DMSメトリック表の内容を表示します。
displayMetricTableNames
([servers]): 使用可能なDMSメトリック表の名前を表示します。戻り値は、メトリック表の名前を含む文字列配列です。
注意: dmstool コマンドは、dumpMetrics 、displayMetricTables およびdisplayMetricTableNames コマンドに代わりました。DMS WLSTコマンドの詳細は、Oracle Fusion Middleware WebLogic Scripting Toolのコマンド・リファレンスのDMSカスタムWLSTコマンドに関する項を参照してください。 |
DMSスパイ・サーブレットを使用すると、WebブラウザからDMSメトリック・データにアクセスできます。DMS対応のアプリケーションやコンポーネントで作成および更新されるデータは、DMSスパイ・サーブレットを通じてアクセス可能です。
DMSスパイ・サーブレットはDMS Webアプリケーションの一部です。DMS WebアプリケーションのWebアーカイブ・ファイルはdms.warで、dms.jar
と同じディレクトリ<ORACLE_HOME>/modules/oracle.dms_11.1.1/dms.war
にあります。
デフォルトでは、DMS WebアプリケーションはJRF対応のサーバー・インスタンスの一部としてデプロイされます。URLはhttp://host:port/dms/Spy
です。
管理者ロールのアクセス権限を持つユーザーのみがこのURLを表示できます。これは、web.xml
の標準的なJava EE要素によってアクセスが制限されているためです。
図4-2に、スパイ・サーブレットの初期ページを示します。両側に同じメトリック表のリストが表示されています。
スパイ・サーブレットには、WebLogic Serverのメトリック表に加えて、デプロイされる非Java EEコンポーネントのメトリック表も表示されます。
メトリック表がスパイ・サーブレットに表示されるためには、その表の作成および更新を行うコンポーネントがインストールされ、稼働していることが必要です。稼働していないコンポーネントのメトリック表は表示されません。名前に:を含むメトリック表(weblogic_j2eeserver:app_overviewなど)は、メトリック・ルールによって生成された集計メトリック表です。
メトリック表の内容を表示するには、表の名前をクリックします。たとえば、図4-3はMDS_Partition表を示しています。
メトリック表のフィールドの説明を参照するには、表の下の「メトリック定義」リンクをクリックします。
Oracle Process Manager and Notification Server(OPMN)は、Oracle Fusion Middlewareコンポーネントのステータスを監視します。また、コンポーネントの起動および停止、システム・コンポーネントの監視、ならびにプロセス管理に関連するその他多くの作業も実行できます。たとえば、OPMNを使用して、Oracle HTTP ServerやOracle Web CacheといったOPMN管理プロセスの起動および停止を行うことができます。OPMNコマンドの詳細は、5.5.4項「Oracle HTTP Serverの監視」を参照してください。
注意: OPMNの使用の詳細は、『Oracle Fusion Middleware Oracle Process Manager and Notification Server管理者ガイド』を参照してください。 |
Fusion Middleware Controlを使用すると単一のFusion Middlewareファームのパフォーマンスをリアルタイムに監視できるのに対し、Oracle Enterprise Manager 11g Grid Controlでは、データ・センターのその他の要素(基礎となるホストやオペレーティング・システム、データベース、Oracle E-Business SuiteやSiebelのようなパッケージ・アプリケーション、F5 BIG_IP Local Traffic Managerのようなサード・パーティ製品など)とともに、複数のファームを一元的に管理できます。
注意: Grid Controlは、Fusion Middlewareをインストールすると自動的に使用可能になるわけではありません。別途インストールする必要があります。Grid Controlのインストール方法の詳細は、Oracle Enterprise Manager 11g Grid Controlのインストレーションおよびアドバンスト構成ガイドを参照してください。 |
Grid Controlの主な機能の中で、Fusion Middlewareのパフォーマンス監視に利用できる機能、および関係のある機能は次のとおりです。
単一コンソールから複数のWebLogic Serverドメインを監視。
特別な設定をしなくても可用性およびパフォーマンスの監視が可能
可用性およびパフォーマンスをリアルタイムに、また履歴に基づいて監視
主要パフォーマンス・メトリックに対して警告のしきい値およびクリティカルのしきい値を指定
メトリックのしきい値に達したときに電子メールまたはページャ(あるいはその両方)による通知を受信
収集したパフォーマンス情報に対して傾向分析を実行
Application Diagnostics for Java(AD4J)。アプリケーションのインスツルメンテーションを行わなくても稼働状態を診断できます。AD4Jの画面を次に示します。
AD4Jの主な機能は次のとおりです。
メソッド、スタックおよびスレッドの状態の完全な可視化
実行中のコードのうち、コストの高いものをすばやくランク付けして、ボトルネックを特定
コード行の粒度
複数の層にまたがったデータベースとEJB/RMIの相関関係
Javaスレッドのロックおよび同期の検出
スレッド・アクティビティのトレース
ヒープのスナップショットおよび分析
ヒープの差分分析によるメモリー・リークの迅速な切分け
しきい値ベースのアラート
SNMPトラップ、SMTPまたはHTTPリクエストによるアラート処理
Composite Application Monitor and Modeler(CAMM)では、ポータル、BPEL、ESB、OSB、Webサービスといった複雑なコンポジット・サービスのアプリケーション・サービス管理が可能です。CAMMの画面を次に示します。
CAMMの主な機能は次のとおりです。
複雑なサービス(ポータル、BPEL、ESB、OSB、Webサービス)の自動検出
自動メタデータ分析と監視インスツルメンテーション構成
SOAサービスとエンドポイントの間のランタイム依存性分析
固有の用語を使用して監視対象となるターゲットを表すメタデータ・モデル
インバウンド・リクエストの到着および完了に基づいた呼出しメトリック
レスポンス時間の平均値、最大値および最小値のメトリック
長期的な格納および傾向分析を目的とする階層型データ集計
任意の日付/時刻範囲に対する履歴ビュー
任意の2つの日付/時刻範囲を同時にスクロールしながら比較する比較ビュー
任意のグラフ、表および機能ビューを組み合せたカスタム・ビュー
カスタマイズ可能なカスタム・ビュー階層
任意のメトリックに関するしきい値ベースのアラート(個別および集計)
SNMPトラップ、SMTP、ロギングまたはカスタム・スクリプトによるアラート処理
Real User Experience Insight(RUEI)では、アプリケーションの実際のエンドユーザー体験を把握できます。アプリケーションのインスツルメンテーションは不要です。RUEIの画面を次に示します。
RUEIの主な機能は次のとおりです。
パフォーマンス低下の再現
エグゼクティブ・ダッシュボード
KPIおよびSLAの幅広い監視
完全なアラート機能
迅速なボトルネック分析
トランザクション・パフォーマンス分析
カスタマイズ可能なレポート
傾向分析
XMLによる完全なデータ統合
注意: Oracle Enterprise Manager 10g Grid Controlで使用可能な監視機能の詳細は、Oracle Technology Network(http://www.oracle.com/technology/documentation/oem.html )から入手できるOracle Enterprise Manager 10g Grid Controlのドキュメントを参照してください。 |
各オペレーティング・システムには、監視用の便利なネイティブ・ツールおよびユーティリティが用意されています。オペレーティング・システムのネイティブ・コマンドを使用すれば、CPU使用率、ページング・アクティビティ、スワッピング、その他のシステム・アクティビティ情報などを収集して監視することができます。
オペレーティング・システム・コマンドの詳細は、オペレーティング・システム・ベンダー提供のドキュメントを参照してください。
オペレーティング・システムのネットワーク・モニタリング・ツールを使用すると、使用率の監視、ネットワークがボトルネックになっていないかどうかの確認、またはパケット損失やその他のネットワーク・パフォーマンスの問題の検出を行うことができます。ネットワーク・パフォーマンス監視の詳細は、オペレーティング・システムのドキュメントを参照してください。