ヘッダーをスキップ
Oracle Fusion Middleware Oracle WebLogic Server RESTful Webサービスの開発
12cリリース1 (12.1.1)
B65960-02
  目次へ移動
目次

前
 
次
 

6 RESTful Webサービスの監視

この章では、Java API for RESTful Web Services (JAX-RS)を使用して、Representational State Transfer (REST)アーキテクチャ・スタイルに従ったWebLogic Webサービスを監視する方法について説明します。

この章の内容は以下のとおりです。

RESTful Webサービスの監視について

RESTful Webサービスを監視するには、表6-1で定義するいずれかのメソッドを使用します。

表6-1 RESTful Webサービスの監視用メソッド

メソッド 詳細についての参照先

WebLogic Scripting Tool (WLST)コマンドライン・スクリプト環境を使用して、実行時情報にアクセスし、実行時統計を監視します。

WLSTを使用したRESTful Webサービスの監視


リクエストが処理されJersey JAX-RS RIコンポーネントにディスパッチされるのを監視するログ・フィルタを有効にします。

トレース機能の有効化



WLSTを使用したRESTful Webサービスの監視

WebLogic Serverは表6-2に定義されたものを含む、ランタイムMBeanを提供し、これにより、実行時情報を取得し、RESTful Webサービス・アプリケーションの実行時統計を監視することができます。

表6-2 RESTful Webサービスの監視用ランタイムMBean

ランタイムMBean 説明

JaxRsApplication

RESTful Webサービス・アプリケーションの監視情報を表示します。詳細は、WebLogic Server MBean リファレンスのJaxRsApplicationRuntimeBeanに関する項を参照してください。

ResourceConfig

RESTful Webサービス・アプリケーションのリソース構成に関する監視情報を表示します。詳細は、WebLogic Server MBean リファレンスのJaxRsResourceConfigTypeRuntimeBeanに関する項を参照してください。

RootResources

RESTful Webサービスのリソースに関する監視情報を表示します。コンテナにより管理されるすべてのオブジェクト(EJBなど)はアプリケーション・スコープを含みます。その他のすべてのリソースはデフォルトでリクエスト・スコープを含みます。詳細は、WebLogic Server MBean リファレンスのJaxRsResourceRuntimeBeanに関する項を参照してください。

Servlet

RESTful Webサービス・アプリケーションをホストするサーブレットの監視情報を表示します。詳細は、WebLogic Server MBean リファレンスのServletRuntimeMBeanに関する項を参照してください。


WLSTを使用してRESTful Webサービスを監視するには、次のプロシージャで提供される手順を実行します。

このプロシージャでは、手順の例により、WebLogic Serverのサンプル・サーバーとともに提供されるRESTful Webサービス・サンプルの監視方法を示します。『Oracle WebLogic Serverの理解』のサンプル・アプリケーションとコード例に関する項を参照してください。

  1. 『Oracle WebLogic Scripting Tool』のWLSTの呼出しに関する項の説明に従って、WLSTを呼び出します。

    例:

    c:\> java weblogic.WLST
    
  2. 管理サーバー・インスタンスに接続します。『WebLogic Scripting Toolコマンド・リファレンス』の接続に関する項を参照してください。

    例:

    wls:/offline> connect('weblogic','welcome1','t3://localhost:8001') 
    
  3. サーバー・ランタイムMBeanに移動します。『WebLogic Scripting Toolコマンド・リファレンス』のサーバー・ランタイムに関する項を参照してください。

    例:

    wls:/wl_server/serverConfig> serverRuntimes()
    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> 
    
  4. Webアプリケーション・コンポーネント・ランタイム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')
    
  5. RESTful Webサービス・サーブレットのアプリケーション・ランタイムMBeanに移動します。

    例:

    wls:/wl_server/serverRuntime/ApplicationRuntimes/jaxrs/ComponentRuntimes/examplesServer_/jaxrs> cd('JaxRsApplications/RestServlet')
    
  6. 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>
    
  7. 次のいずれかのランタイムMBeanに移動して、追加の監視情報を表示します。MBeanに関する詳細は、表6-2またはWebLogic Server MBean リファレンスを参照してください。

    • ResourceConfig

    • RootResources

    • Servlet

  8. WLSTを終了します。『Oracle WebLogic Scripting Tool』のWLSTの終了に関する項を参照してください。

    例:

    wls:/wl_server/serverRuntime/ApplicationRuntimes/jaxrs/ComponentRuntimes/example
    sServer_/jaxrs/JaxRsApplications/RestServlet> exit()
    Exiting WebLogic Scripting Tool ...
    c:\>
    

トレース機能の有効化

Jerseyトレース機能は、リクエストが処理されJersey JAX-RS RIコンポーネントにディスパッチされる状況を説明する有用な情報を提供します。トレース・メッセージは発生順に出力されるので、その番号はトレース順序を再構成するのに役立ちます。

次にトレース・メッセージの例を示します。このメッセージは、リクエスト・パスと、一致する最初の正規表現のセットを、左から右の順序で示します。

例6-1 トレース・メッセージの例

Trace 001:
X-Jersey-Trace-001  match path "/items/3/tracks/2/" -> "/application\\.wadl(/.\*)?", "/happy(/.\*)?", "(/.\*)?"

この機能は、サーバー全体またはリクエストごとに有効にできます。次の項を参照してください。

サーバー全体のトレース機能の有効化方法

サーバー全体のトレース機能を有効にするには:

  • アプリケーションとパッケージ化された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プロパティを有効化します。詳細は、http://jersey.java.net/nonav/apidocs/1.9/jersey/com/sun/jersey/api/core/ResourceConfig.html#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プロパティを有効化します。詳細は、http://jersey.java.net/nonav/apidocs/1.9/jersey/com/sun/jersey/api/core/ResourceConfig.html#FEATURE_TRACE_PER_REQUESTを参照してください。