Oracle Fusion Middleware Oracle WebLogic ServerにおけるRESTful管理サービスの使用 12cリリース1(12.1.1) B65963-01 |
|
Oracle WebLogic ServerにおけるRESTful管理サービスの使用
12cリリース1(12.1.1)
B65963-01(原本部品番号:E26722-01)
2011年12月
注意: WebLogic Serverの現在のリリースでは、RESTful管理サービスは、WebLogic Serverの監視に厳密に限定されているためGET HTTP メソッドのみサポートします。 |
次の各項では、このマニュアル『Oracle WebLogic ServerにおけるRESTful管理サービスの使用』の内容と構成について説明します。
WebLogic Serverには、WebLogic ServerをOracle Public Cloud管理コンソールの外部で監視できるようにするRESTful管理サービスが用意されています。このマニュアルでは、RESTful管理サービスの使用方法について説明します。
このマニュアルは、Java EEおよび一般的なアプリケーション管理の概念に精通している読者を対象としています。このドキュメントでは、限定的でありながら有用な一連のRESTful監視サービスを開発するための実践的な方法を重点的に扱います。
このドキュメントの構成は次のとおりです。
この章「概要とロード・マップ」では、このマニュアルの構成を紹介します。
「概要」では、WebLogic ServerでのRESTful管理サービスの使用の概要を示します。
「はじめに」では、WebLogic ServerでRESTful管理サービスを有効にする方法について説明します。
「REST URLを使用したWebLogic Serverドメインの監視」では、HTTP URLの形式と使用方法、およびサポートされるリクエスト・コンテンツ・タイプについて説明します。
「WebLogic Serverの監視でサポートされるRESTリソース」では、RESTful管理サービスでWebLogic Serverを監視する際にサポートされるRESTリソースについて説明します。
WebLogic Serverアプリケーション用に他のタイプの管理サービスを開発するためのガイドラインについては、以下のドキュメントを参照してください。
アプリケーション・ロギングのためのWebLogicロギング・サービスの使用。WebLogicによるログ・メッセージの国際化とローカライゼーションのサポートについて説明し、WebLogic Serverで提供されているテンプレートおよびツールを使用して、ロケール固有のメッセージ・カタログを作成または編集する方法を示します。
WebLogic診断フレームワークを構成および使用。WebLogic診断フレームワークを構成および使用して、実行中のサーバーおよびそのサーバーのコンテナにデプロイされているアプリケーションで生成された診断データを作成、収集、分析、アーカイブおよびアクセスする方法を示します。
WebLogic Server RESTful管理サービスには、WebLogic ServerをOracle Public Cloud管理コンソールの外部で監視できるようにするRepresentational State Transfer (REST)リソースが用意されています。RESTクライアントは、Oracle Public PaaS WebLogic Serviceのファイアウォールの背後で実行されているときにドメインのサーバー、クラスタ、アプリケーションおよびデータ・ソースを監視できる柔軟でカスタマイズされたコンソールに、きめ細かな監視情報を埋め込むことができます。監視リソースは、内部Webアプリケーションによってホストされます。
Administrators
グループまたはMonitors
グループに属するユーザーだけが、RESTful管理サービスにアクセスできます。WebLogic Serverでのユーザー・ロールの定義の詳細は、『Oracle Fusion Middleware Oracle WebLogic Server ロールおよびポリシーによるリソースの保護』のユーザー、グループおよびセキュリティ・ロールに関する項を参照してください。
WebLogic Serverの次のコンポーネントは、RESTful管理サービスを使用して監視できます。
サーバー: ドメイン内のすべてのサーバー・インスタンスまたは指定したサーバー・インスタンス。
クラスタ: ドメイン内のすべてのクラスタまたは指定したクラスタ。クラスタのすべてのサーバー・メンバーを含みます。
アプリケーション: ドメインにデプロイされているすべてのアプリケーションまたは指定したアプリケーション。
データ・ソース: ドメインで実行されているすべてのデータ・ソースまたは指定したデータ・ソース。
RESTful管理サービスをWebLogic Serverドメインで使用するには、WebLogic管理者がWebLogic Server管理コンソールを使用してそれらを有効にする必要があります。詳細は、管理コンソールのオンライン・ヘルプのRESTful管理サービスの有効化に関する項を参照してください。
WebLogic Serverの現在のリリースでは、RESTful管理サービスはWebLogic Serverの監視のみに限定されているため、GET HTTP
メソッドのみサポートします。監視対象の各WebLogic Serverリソースには、HTTP Uniform Resource Locator (URL)を介してアクセスできます。
WebLogic Server監視リソースURLの形式は次のとおりです。
http(s)://
host:port
/management/tenant-monitoring/
path
説明:
host
: WebLogic Serverが実行されているホスト
port
: HTTPまたはHTTPSポート
path
: 個々のリソースを識別する相対パス。たとえば、サーバー・インスタンスへのパスはservers/
myserver
のようになります。
WebLogic Server RESTful管理サービスでは、次の表現形式がサポートされます。
JSON
XML
HTML
クライアントは、HTTPヘッダーを通じてリソース表現を指定する必要があります。たとえば、クライアントがcURLユーティリティを使用している場合は、次のように-H
オプションを使用してタイプを指定する必要があります。
JSON: -H "Accept application/json"
を指定します
XML: -H "Accept application/xml"
を指定します
HTML: -H
オプションを省略します
WebLogic Server監視リソースの表現には次の2種類があります。
アイテム・リソースは、サーバー・インスタンスなど、WebLogic Serverエンティティのインスタンスを表します。
JSONを使用したサーバー・インスタンスのアイテム・リソース表現の出力例を次に示します。
{ "body": { "item": { // attributes for the item, e.g. // "name": "adminserver" // "state": "RUNNING", // … } }, "messages": [ // an array of messages ] }
使用可能な属性値型は次のとおりです。
二重引用符""で囲んだstring
trueまたはfalseのboolean
number
null
"["および"]"で囲んだarray
"{"および"}"で囲んだobject
XMLを使用したサーバー・インスタンスのアイテム・リソース表現の出力例を次に示します。
<?xml version="1.0" encoding="utf-8"?> <data> <object> <property name="body"> <object> <property name="item"> <object> <!-- <property name="Name"> <value type="string">adminserver</value> </property> // other properties --> </object> </property> </object> </property> <property name="messages"> <array> <!-- message objects --> </array> </property> </object> </data>
コレクション・リソースは、ドメイン内のすべてのサーバーを表す場合など、同じタイプのWebLogic Serverエンティティのセットを表します。通常、アイテム・リソースはコレクション内のエンティティごとに存在します。
JSONを使用したドメイン内のすべてのサーバーのコレクション・リソース表現の出力例を次に示します。
{ "body": { "items": [ { // attributes for item 1 // "name": "adminserver" // "state": "RUNNING", // … }, { // attributes for item 2 }, … { // attributes for item n } ], "messages": [ ] }
XMLを使用したドメイン内のすべてのサーバーのコレクション・リソース表現の出力例を次に示します。
<?xml version="1.0" encoding="utf-8"?> <data> <object> <property name="body"> <object> <property name="items"> <array> <!-- <object> <property name="name"> <value type="string">adminserver</value> </property> // other properties </object> // other items --> </array> </property> </object> </property> <property name="messages"> <array> <!-- <object> <property name="severity"> <value type="string">WARNING</value> </property> <property name="message"> <value type="string">Server ms1 is not running.</value> </property> </object> // other messages --> </array> </property> </object> </data>
コレクション・リソースは、デフォルトでコンパクト・レスポンス形式を使用します。つまり、コレクションのアイテムごとに、使用可能なすべての監視情報のサブセットのみが返されます。
各アイテムのフル・レスポンス形式を取得するには、リクエスト・パラメータにformat=full
を追加する必要があります。次に例を示します。
http://
host:port
/management/tenant-monitoring/servers?format=full
アイテム・リソースは、RESTインタフェースを通じて使用可能なすべての監視情報を含むフル・レスポンス形式を常に使用します。アイテム・リソースの本文アイテムには、フル形式のコレクション・リソース内の対応するアイテムとまったく同じ情報が含まれます。
この項では、RESTful管理サービスでWebLogic Serverドメインを監視する際にサポートされるRESTリソースについて説明します。
次にリストする/servers
URLは、ドメインに構成されたすべてのサーバーを返し、サーバー状態やヘルスなど、各サーバーのランタイム情報を提供します。
http(s)://
host:port
/management/tenant-monitoring/servers
表1 ドメイン内のすべてのサーバーを監視するためのRESTリソース
アイテム属性 (コンパクト形式) |
型 | 有効な値 |
---|---|---|
|
string |
サーバーの名前。 |
|
文字列 |
サーバー・ステータス。可能な状態は次のとおりです。
|
|
文字列 |
サーバーのヘルス状態。可能なヘルス状態は次のとおりです。
|
JSON形式での/servers
URLレスポンスの例を次に示します。
{ "body": { "items": [ { "name": "adminserver", "state": "RUNNING", "health": " HEALTH_OK " }, { "name": "ms1", "state": "SHUTDOWN", "health": "" } ], }, "messages": [ ] }
次にリストする/servers/{servername}
URLは、サーバー状態、ヘルス、JVMヒープの可用性など、ドメイン内の指定したサーバーに関する情報を返します。
http(s)://
host:port
/management/tenant-monitoring/servers/{servername}
表2 ドメイン内の指定したサーバーを監視するためのRESTリソース
アイテム属性 | 型 | 有効な値 |
---|---|---|
|
文字列 |
サーバー・インスタンスの名前。 |
|
文字列 |
サーバーのステータス。想定されている状態は次のとおりです。
|
|
文字列 |
サーバーのヘルス状態。想定されているヘルス状態は次のとおりです。
|
|
文字列 |
サーバーが属するクラスタ。 |
|
文字列 |
サーバーが実行されているマシン。 |
|
文字列 |
WebLogic Serverインスタンスのバージョン。 |
|
数値 |
サーバーのソケット多重化用に登録されている現在のソケット数。 |
|
数値 |
JVMヒープの現在のサイズ(バイト単位)。 |
|
数値 |
JVMヒープで使用可能な現在のメモリー量(バイト単位)。 |
|
文字列 |
JVMのJavaバージョン。 |
|
文字列 |
JVMが実行されているオペレーティング・システム。 |
|
文字列 |
JVMが実行されているオペレーティング・システムのバージョン。 |
|
数値 |
VMがすべてのプロセッサに与えている平均負荷。たとえば、1.0は100%を表します。 |
JSON形式での/servers/{servername}
URLレスポンスの例を次に示します。
{ "body": { "item": { "name": "adminserver", "clusterName": null, "state": "RUNNING", "currentMachine": "machine-0", "weblogicVersion": "WebLogic Server 12.1.1.0.0 Thu May 5 01:17:16 2011 PDT", "openSocketsCurrentCount": 2, "health": "HEALTH_OK", "heapSizeCurrent": 536870912, "heapFreeCurrent": 39651944, "heapSizeMax": 1073741824, "javaVersion": "1.6.0_20", "osName": "Linux", "osVersion": "2.6.18-238.0.0.0.1.el5xen", "jvmProcessorLoad": 0.25, } }, messages: [ ] }
次にリストする/clusters
URLは、ドメインに構成されたすべてのクラスタを返し、すべてのメンバー・サーバーの状態やヘルスなど、各クラスタおよび各クラスタのメンバー・サーバーのランタイム情報を提供します。
http(s)://
host:port
/management/tenant-monitoring/clusters
表3 ドメイン内のすべてのクラスタを監視するためのRESTリソース
アイテム属性 (コンパクト形式) |
型 | 有効な値 |
---|---|---|
|
文字列 |
クラスタの名前。 |
|
文字列 |
クラスタのメンバー・サーバー。
|
JSON形式での/clusters
URLレスポンスの例を次に示します。
{ "body": { "items": [ { "name": "mycluster1", "servers": [ { "name": "ms1", "state": "RUNNING", "health": "HEALTH_OK" }, { "name": "ms2", "state": "RUNNING", "health": "HEALTH_OVERLOADED" } ] } ], }, "messages": [ ] }
次にリストする/clusters/{clustername}
URLは、メンバー・サーバーの状態やヘルス情報など、指定したクラスタとそのメンバー・サーバーのランタイム情報を返します。
http(s)://
host:port
/management/tenant-monitoring/clusters/{clustername}
表4 ドメイン内の指定したクラスタを監視するためのRESTリソース
アイテム属性 | 型 | 有効な値 |
---|---|---|
|
文字列 |
クラスタの名前。 |
|
objectまたはnumber |
クラスタのメンバー・サーバー。
|
JSON形式での/cluster
URLレスポンスの例を次に示します。
{ "body": { "item": { "name": "mycluster1", "servers": [ { "name": "ms1", "state": "RUNNING", "health": "OK", "clusterMaster": false, "dropOutFrequency": "Never" "resendRequestsCount": 0, "fragmentsSentCount": 3708, "fragmentsReceivedCount": 3631 }, { "name": "ms2", "state": "RUNNING", "health": "OK" ... } ] } }, "messages": [ ] }
次にリストする/applications
URLは、ドメインにデプロイされているすべてのアプリケーションと、アプリケーション・タイプ、その状態とヘルスなどのランタイム情報を返します。
http(s)://
host:port
/management/tenant-monitoring/applications
表5 ドメインにデプロイされたすべてのアプリケーションを監視するためのRESTリソース
アイテム属性 (コンパクト形式) |
型 | 有効な値 |
---|---|---|
|
文字列 |
アプリケーション名。 |
|
文字列 |
アプリケーション・タイプ。可能なタイプは次のとおりです。
|
|
文字列 |
統合アプリケーションの実行ステータス。想定されている状態は次のとおりです。
|
|
文字列 |
アプリケーションの統合ヘルス状態。想定されているヘルス状態は次のとおりです。
|
JSON形式での/applications
URLレスポンスの例を次に示します。
{ "body": { "items": [ { "name": "appscopedejbs", "type": "ear", "state": "STATE_ACTIVE", "health": " HEALTH_OK" }, { "name": "MyWebApp", "type": "war", "state": "STATE_NEW" } } ], }, "messages": [ ] }
/applications/{applicationname}
URLは、エンティティBean、アプリケーション・スコープのワーク・マネージャおよびデータ・ソースの統計など、指定したアプリケーションのランタイム情報を返します。
http(s)://
host:port
/management/tenant-monitoring/applications/{applicationname}
表6 ドメインにデプロイされた指定したアプリケーションを監視するためのRESTリソース
アイテム属性 | 型 | 有効な値 |
---|---|---|
|
文字列 |
アプリケーションの名前。 |
|
文字列 |
アプリケーション・タイプ。想定されているタイプは次のとおりです。
|
|
文字列 |
統合されたアプリケーションの実行ステータス。想定されている状態は次のとおりです。
|
|
文字列 |
アプリケーションの統合されたヘルス状態。想定されているヘルス状態は次のとおりです。
|
|
object |
各ターゲットのアプリケーション実行ステータス。
|
|
オブジェクト |
埋込みデータ・ソースのランタイム情報。
|
|
オブジェクトまたは数値 |
アプリケーションに対して構成されているワーク・マネージャの統計。
|
|
オブジェクトまたは数値 |
アプリケーションに対して構成されている最小スレッド制約の統計。
|
|
オブジェクトまたは数値 |
アプリケーションに対して構成されている最大スレッド制約の統計。
|
|
オブジェクトまたは数値 |
アプリケーションに対して構成されているリクエスト・クラスの統計。
|
JSON形式での/applications/{applicationname}
URLレスポンスの例を次に示します。
{ "body": { "item": { "name": "appscopedejbs", "type": "ear", "health": " HEALTH_OK ", "state": "STATE_ACTIVE", "targetStates": [ { "target": "ms1", "state": "STATE_ACTIVE", }, { "name": "ms2", "state": "STATE_ACTIVE", } ] , "dataSources": [ ], "entities": [ ], "workManagers": [ { "name": "default", "server": "ms1", "pendingRequests": 0, "completedRequests": 0 } ], "minThreadsConstraints": [ { "name": "minThreadsConstraints-0", "server": "ms1", "completedRequests"; 0, "pendingRequests"; 0, "executingRequests": 0, "outOfOrderExecutionCount":0, "mustRunCount": 0, "maxWaitTime": 0, "currentWaitTime": 0 } ], "maxThreadsConstraints": [ { "name": "maxThreadsConstraints-0", "server": "ms1", "executingRequests": 0, "deferredRequests": 0 } ], "requestClasses": [ { "name": "requestClasses-0", "server": "ms1", "requestClassType"; "fairshare", "completedCount"; 0, "totalThreadUse": 0, "pendingRequestCount":0, "virtualTimeIncrement": 0 } ] } }, "messages": [ ] }
次にリストする/datasources
URLは、ドメインに構成されたすべての汎用およびGridLink JDBCデータ・ソースを返し、各データ・ソースのランタイム情報を提供します。
http(s)://
host:port
/management/tenant-monitoring/datasources
表7 ドメイン内のすべてのデータ・ソースを監視するためのRESTリソース
アイテム属性 (コンパクト形式) |
型 | 有効な値 |
---|---|---|
|
文字列 |
データ・ソースの名前。 |
|
文字列 |
データ・ソース・タイプ( |
|
文字列 |
データ・ソース・インスタンスのランタイム情報。
|
JSON形式での/datasources
URLレスポンスの例を次に示します。
{ "body": { "items": [ { "name": "genericDS", "type": "Generic" "instances": [ { "server": "ms1", "state": "Running" }, { "server": "ms2", "state": "Suspended" } ] }, { "name": "gridlinkDS", "type": "GridLink", "instances": [ { "server": "ms1", "state": "Running" }, ] } ], }, "messages": [ ] }
次にリストする/datasources/{datasourcename}
URLは、GridLinkデータ・ソースのOracle RAC統計など、指定したデータ・ソースのランタイム情報を返します。
http(s)://
host:port
/management/tenant-monitoring/datasources/{datasourcename}
表8 ドメイン内の指定したデータ・ソースを監視するためのRESTリソース
アイテム属性 (コンパクト形式) |
型 | 有効な値 |
---|---|---|
|
文字列 |
データ・ソースの名前。 |
|
文字列 |
データ・ソース・タイプ( |
|
オブジェクトまたは数値 |
データ・ソース・インスタンスのランタイム情報。
|
|
オブジェクトまたは数値 |
|
|
オブジェクトまたは数値 |
|
|
オブジェクトまたは数値 |
|
JSON形式での/datasources/{datasourcename}
URLレスポンスの例を次に示します。
{ "body": { "item": { "name": "gridlinkDS", "instances": [ { "server": "ms1", "state": 'Running", "enabled": true, "activeConnectionsAverageCount": 5, … "racInstances": [ { "instanceName": "gridlinkDS-0", "state": "Running", … }, { "instanceName": "gridlinkDS-1", "state": "Suspended", … } ] } } }, "messages": [ ] }
Oracleのアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc
を参照してください。
Oracleサポートへのアクセス
Oracleのお客様は、My Oracle Supportにアクセスして電子サポートを受けることができます。詳細情報はhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=info
か、聴覚に障害のあるお客様はhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs
を参照してください。
Oracle Fusion Middleware Oracle WebLogic ServerにおけるRESTful管理サービスの使用 12cリリース1(12.1.1)
B65963-01
Copyright © 2007, 2011, Oracle and/or its affiliates.All rights reserved.
このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。
ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。
このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。
U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007).Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.
このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。
OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。
Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。
このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。