Oracle® Fusion Middleware Oracle WebLogic Server RESTful Webサービスの開発と保護 12c (12.1.2) E47996-02 |
|
前 |
次 |
この章では、Java API for RESTful Web Services (JAX-RS)を使用して、Representational State Transfer (REST)アーキテクチャ・スタイルに従ったWebLogic Webサービスを監視する方法について説明します。
この章の内容は次のとおりです:
RESTful Webサービスを監視するには、表7-1に定義されているいずれかのメソッドを使用します。
表7-1 RESTful Webサービスの監視用メソッド
メソッド | 説明 |
---|---|
Enterprise Manager Fusion Middleware Control |
実行時情報にアクセスし、実行時統計を監視します。詳細は、「Enterprise Manager Fusion Middleware Controlを使用したRESTful Webサービスの監視」を参照してください。 |
WebLogic Server管理コンソール |
実行時情報にアクセスし、実行時統計を監視します。詳細は、「管理コンソールを使用したRESTful Webサービスの監視」を参照してください。 |
WebLogic Scripting Tool (WLST) |
実行時情報にアクセスし、実行時統計を監視します。詳細は、「WLSTを使用したRESTful Webサービスの監視」を参照してください。 |
ログ・フィルタ |
リクエストが処理される方法と、Jersey JAX-RS RIコンポーネントにディスパッチされる方法を監視します。詳細は、「トレース機能の有効化」を参照してください。 |
Enterprise Manager Fusion Middleware Controlを使用すると、RESTfulアプリケーションおよびリソースの統計(エラー数、呼出し回数、実行回数など)を監視できます。詳細は、『Webサービスの管理』のWebサービスの監視に関する項を参照してください。
管理コンソールを使用すると、RESTfulアプリケーションおよびリソースの統計(エラー数、呼出し回数、実行回数など)を監視できます。
管理コンソールを使用してデプロイ済RESTful Webサービスを監視するには、次の手順を実行します。
次のURLを使用して、ブラウザで管理コンソールを呼び出します。
http://[host]:[port]/console
各文字列の説明:
host
- WebLogic Serverが動作しているコンピュータの名前。
port
- WebLogic Serverがリスニングしているポート番号(デフォルト値は7001
です)。
Oracle WebLogic Server管理コンソール・オンライン・ヘルプのRESTful Webサービスの監視に関する項で説明されている手順に従います。
WebLogic Serverは表7-2に定義されたものを含む、ランタイムMBeanを提供し、これにより、実行時情報を取得し、RESTful Webサービス・アプリケーションの実行時統計を監視することができます。
表7-2 RESTful Webサービスの監視用ランタイムMBean
ランタイムMBean | 説明 |
---|---|
|
RESTful Webサービス・アプリケーションの監視情報を表示します。詳細は、WebLogic Server MBean リファレンスのJaxRsApplicationRuntimeBeanに関する項を参照してください。 |
|
RESTful Webサービス・アプリケーションのリソース構成に関する監視情報を表示します。詳細は、WebLogic Server MBean リファレンスのJaxRsResourceConfigTypeRuntimeBeanに関する項を参照してください。 |
|
RESTful Webサービスのリソースに関する監視情報を表示します。コンテナにより管理されるすべてのオブジェクト(EJBなど)はアプリケーション・スコープを含みます。その他のすべてのリソースはデフォルトでリクエスト・スコープを含みます。詳細は、WebLogic Server MBean リファレンスのJaxRsResourceRuntimeBeanに関する項を参照してください。 |
|
RESTful Webサービス・アプリケーションをホストするサーブレットの監視情報を表示します。詳細は、WebLogic Server MBean リファレンスのServletRuntimeMBeanに関する項を参照してください。 |
WLSTを使用してRESTful Webサービスを監視するには、次のプロシージャで提供される手順を実行します。
このプロシージャでは、手順の例により、WebLogic Serverのサンプル・サーバーとともに提供されるRESTful Webサービス・サンプルの監視方法を示します。『Oracle WebLogic Serverの理解』のサンプル・アプリケーションとコード例に関する項を参照してください。
『WebLogic Scripting Toolの理解』のWLSTの呼出しに関する項の説明に従って、WLSTを呼び出します。
以下に例を示します。
c:\> java weblogic.WLST
『WebLogic Server WLSTコマンド・リファレンス』のconnectに関する項の説明に従って、管理サーバー・インスタンスに接続します。
以下に例を示します。
wls:/offline> connect('weblogic','password','t3://localhost:8001')
『WebLogic Server WLSTコマンド・リファレンス』のserverRuntimeに関する項の説明に従って、サーバー・ランタイムMBeanに移動します。
以下に例を示します。
wls:/wl_server/serverConfig> serverRuntime()
Location changed to serverRuntime tree. This is a read-only tree
with ServerRuntimeMBean as the root.
For more help, use help('serverRuntime')
wls:/wl_server/serverRuntime>
Webアプリケーション・コンポーネント・ランタイムMBeanに移動します。
たとえば、jaxrs
という名前のアプリケーションのランタイムMBeanに移動するには、次を実行します。
wls:/wl_server/serverRuntime> cd('ApplicationRuntimes/jaxrs') wls:/wl_server/serverRuntime/ApplicationRuntimes/jaxrs> cd('ComponentRuntimes') wls:/wl_server/serverRuntime/ApplicationRuntimes/jaxrs/ComponentRuntimes> cd('examplesServer_/jaxrs')
RESTful Webサービス・サーブレットのアプリケーション・ランタイムMBeanに移動します。
以下に例を示します。
wls:/wl_server/serverRuntime/ApplicationRuntimes/jaxrs/ComponentRuntimes/examplesServer_/jaxrs> cd('JaxRsApplications/RestServlet')
RESTful Webサービス・アプリケーションについて表示される監視情報を確認します。詳細は、WebLogic Server MBean リファレンスのJaxRsApplicationRuntimeBeanに関する項を参照してください。
以下に例を示します。
wls:/wl_server/serverRuntime/ApplicationRuntimes/jaxrs/ComponentRuntimes/example
sServer_/jaxrs/JaxRsApplications/RestServlet> ls()
dr-- ResourceConfig
dr-- RootResources
dr-- Servlet
-r-- ErrorCount 0
-r-- ExecutionTimeAverage 0
-r-- ExecutionTimeHigh 0
-r-- ExecutionTimeLow 0
-r-- ExecutionTimeTotal 0
-r-- HttpMethodCounts {}
-r-- InvocationCount 0
-r-- LastErrorDetails null
-r-- LastErrorMapper null
-r-- LastErrorTime 0
-r-- LastHttpMethod null
-r-- LastInvocationTime 0
-r-- LastResponseCode -1
-r-- Name RestServlet
-r-- ResponseCodeCounts {}
-r-- StartTime 1321907929703
-r-- Type JaxRsApplicationRuntime
-r-x preDeregister Void :
wls:/wl_server/serverRuntime/ApplicationRuntimes/jaxrs/ComponentRuntimes/example
sServer_/jaxrs/JaxRsApplications/RestServlet>
次のいずれかのランタイムMBeanに移動して、追加の監視情報を表示します。MBeanに関する詳細は、表7-2またはWebLogic Server MBean リファレンスを参照してください。
ResourceConfig
RootResources
Servlet
『WebLogic Scripting Toolの理解』のWLSTの終了に関する項の説明に従って、WLSTを終了します。
以下に例を示します。
wls:/wl_server/serverRuntime/ApplicationRuntimes/jaxrs/ComponentRuntimes/example
sServer_/jaxrs/JaxRsApplications/RestServlet> exit()
Exiting WebLogic Scripting Tool ...
c:\>
Jerseyトレース機能は、リクエストが処理されJersey JAX-RS RIコンポーネントにディスパッチされる状況を説明する有用な情報を提供します。トレース・メッセージは発生順に出力されるので、その番号はトレース順序を再構成するのに役立ちます。
次にトレース・メッセージの例を示します。このメッセージは、リクエスト・パスと、一致する最初の正規表現のセットを、左から右の順序で示します。
例7-1 トレース・メッセージの例
Trace 001: X-Jersey-Trace-001 match path "/items/3/tracks/2/" -> "/application\\.wadl(/.\*)?", "/happy(/.\*)?", "(/.\*)?"
この機能は、サーバー全体またはリクエストごとに有効にできます。次の項を参照してください。
サーブレットにパッケージ化されたRESTful Webサービス・アプリケーション(「サーブレットとのパッケージ化」を参照)に対してサーバー全体のトレース機能を有効化できます。web.xml
ファイルには次の要素が存在します。
次のように定義されたサーブレットクラス。
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
True
に設定された次のいずれかの<init-param>
。
com.sun.jersey.config.feature.TracePerRequest
com.sun.jersey.config.feature.Trace
サーバー全体のトレース機能を有効にするには:
アプリケーションとパッケージ化されたweb.xml
デプロイメント記述子を更新し、次の<init-param>
要素を追加します。
<init-param> <param-name>com.sun.jersey.config.feature.Trace</param-name> <param-value>true</param-value> </init-param>
<init-param
要素の詳細は、『Oracle WebLogic Server Webアプリケーション、サーブレット、JSPの開発』のサーブレットに関する項を参照してください。
com.sun.jersey.api.core.ResourceConfig.FEATURE_TRACE
プロパティを有効化します。詳細は、https://jersey.java.net/apidocs/1.13/jersey/index.html?com/sun/jersey/api/core/ResourceConfig.html#FEATURE_TRACE
を参照してください。
サーブレットにパッケージ化されたRESTful Webサービス・アプリケーション(「サーブレットとのパッケージ化」を参照)に対してリクエストごとのトレース機能を有効化できます。web.xml
ファイルには次の要素が存在します。
次のように定義されたサーブレットクラス。
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
True
に設定された次のいずれかの<init-param>
。
com.sun.jersey.config.feature.TracePerRequest
com.sun.jersey.config.feature.Trace
リクエストごとのトレースでは、リクエスト・ヘッダーがX-Jersey-Trace-Accept
という名前で存在する場合に、トレース・メッセージが出力されます。
トレース・メッセージは主にX-Jersey-Trace-
XXX
形式のヘッダー名のレスポンス・ヘッダーとして出力され、このXXX
はトレース・メッセージ番号に対応する整数値で、ヘッダー値がトレース・メッセージです。メッセージが長すぎる場合など、レスポンス・ヘッダーにトレース・メッセージを含むことができない場合、トレース・メッセージがサーバーのログに記録されることがあります。
リクエストごとのトレース機能を有効にするには:
アプリケーションとパッケージ化されたweb.xml
デプロイメント記述子を更新し、次の<init-param>
要素を追加します。
<init-param> <param-name>com.sun.jersey.config.feature.TracePerRequest</param-name> <param-value>true</param-value> </init-param>
<init-param
要素の詳細は、『Oracle WebLogic Server Webアプリケーション、サーブレット、JSPの開発』のサーブレットに関する項を参照してください。
Ecom.sun.jersey.api.core.ResourceConfig.FEATURE_TRACE_PER_REQUEST
プロパティを有効化します。詳細は、https://jersey.java.net/apidocs/1.13/jersey/index.html?com/sun/jersey/api/core/ResourceConfig.html#FEATURE_TRACE
を参照してください。