5 MBeanのナビゲート(WLSTオンライン)
MBeanのナビゲートと照会
WLSTオンラインでは、MBeanに簡単にアクセスできます。JMX APIでは、MBeanに対して照会を行うためにJMXオブジェクト名を使用する必要がありますが、WLSTでは、ファイル・システム内のファイルの階層をナビゲートするのと同様なやり方で、MBeanの階層をナビゲートできます。
WebLogic Serverは、MBeanを階層データ・モデルにまとめます。WLSTファイル・システムでは、MBean階層はドライブに、MBeanタイプとインスタンスはディレクトリに、MBean属性と操作はファイルに相当します。UNIXまたはWindowsコマンド・シェルでファイル・システムをナビゲートするときと同じように、WLSTはcd
、ls
、pwd
などのコマンドを使用して、MBeanの階層構造をナビゲートします。MBeanインスタンスにナビゲートしたら、WLSTコマンドを使用してMBeanと対話します。
構成階層のrootディレクトリは、DomainMBean
です(『Oracle WebLogic Server MBeanリファレンス』のDomainMBeanに関する項を参照してください)。MBeanタイプは、rootディレクトリ下のサブディレクトリです。MBeanタイプの各インスタンスはMBeanタイプ・ディレクトリ下のサブディレクトリ、およびMBean属性とMBean操作はMBeanインスタンス・ディレクトリ下のノード(たとえばファイルなど)です。
MBeanインスタンス・ディレクトリの名前は、MBeanのName
属性の値と一致します。MBeanにName
属性がない場合、NO_NAME_
number
の形式でディレクトリ名が生成されます。ここで、number
は0 (ゼロ)から始まり、追加のMBeanインスタンスごとに1ずつ増分します。
WLSTはまず、サーバーの構成MBeanのルートのWebLogic Serverインスタンスに接続します。これは、ルートをDomainMBean
とした単一の階層です。WLSTコマンドでは、サーバーの実行時MBean、ドメイン全体のサービスのためのMBean、ドメイン内のすべての構成MBeanの編集可能なコピーなど、WebLogicドメイン内のすべてのWebLogic Server MBean階層にアクセスできます。『WebLogic Server WLSTコマンド・リファレンス』のツリー・コマンドに関する項を参照してください。
MBean階層の詳細は、Oracle WebLogic Server JMXによるカスタム管理ユーティリティの開発のWebLogic Server MBeanのデータ・モデルを参照してください。
現在の管理オブジェクトの変更
WLSTオンラインでは、現在の管理オブジェクトを表す変数cmo
が提供されます。この変数を使用すると、管理オブジェクトのget
、set
、またはinvoke
メソッドを実行できます。たとえば、cmo
変数では、次のコマンドが有効になります。
wls:/mydomain/edit> cmo.setAdministrationPort(9092)
この変数は、カスタムおよびjndi以外のすべてのWLST階層で利用できます。
WLSTでは、cmo
の値が現在のWLSTパスに設定されます。ディレクトリを変更するごとに、cmo
の値は現在のWLSTパスに再設定されます。たとえば、serverRuntime階層に変更すると、cmo
はServerRuntimeに設定されます。serverConfig階層に変更すると、cmo
はDomainMBeanに設定されます。DomainMBean下のServersディレクトリに変更すると、cmo
はServerMBeanのインスタンスに設定されます(例5-1を参照)。
例5-1 現在の管理オブジェクトの変更
wls:/offline> connect('username','password') Connecting to weblogic server instance running at t3://localhost:7001 as username weblogic ... Successfully connected to Admin Server 'myserver' that belongs to domain 'mydomain'. Warning: An insecure protocol was used to connect to the server. To ensure on-the-wire security, the SSL port or Admin port should be used instead. wls:/mydomain/serverConfig> cmo [MBeanServerInvocationHandler]com.bea:Name=mydomain,Type=Domain wls:/mydomain/serverConfig> cd('Servers') wls:/mydomain/serverConfig/Servers> cmo [MBeanServerInvocationHandler]com.bea:Name=mydomain,Type=Domain wls:/mydomain/serverConfig/Servers> cd('myserver') wls:/mydomain/serverConfig/Servers/myserver> cmo [MBeanServerInvocationHandler]com.bea:Name=myserver,Type=Server
WLST変数の詳細は、WebLogic Server WLSTコマンド・リファレンスのWLST変数リファレンスを参照してください。
構成MBeanサンプルのナビゲートと表示
例5-2のコマンドは、管理サーバーのインスタンスに接続してから、DomainMBean
の属性、操作、および子のMBeanを表示するようWLSTに指示します。
ノート:
この読取り、書込み、および実行の各インジケータは、現在のユーザーのアクセス権に制限がないことを前提としています。WebLogicセキュリティ・レルムのポリシーによって適切な許可が付与されていないユーザーは、WLSTで読取り可能と示されている値でも、読み取ることができない場合があります。Oracle WebLogic Server MBeanリファレンスのMBeanのデフォルト・セキュリティ・ポリシーを参照してください。
親MBeanに戻るには、cd('..')
コマンドを入力します。
wls:/mydomain/serverConfig/Servers/myserver/Log/myserver> cmo [MBeanServerInvocationHandler]mydomain:Name=myserver,Server=myserver,Type=Log wls:/mydomain/serverConfig/Servers/myserver/Log/myserver> cd('..') wls:/mydomain/serverConfig/Servers/myserver/Log> wls:/mydomain/serverConfig/Servers/myserver/Log> cmo [MBeanServerInvocationHandler]mydomain:Name=myserver,Type=Server
親MBeanタイプに戻った後、WLSTはcmo
をLogMBean
からServerMBean
に変更します。
階層の深くにあるMBeanにナビゲートした後でルートMBeanに戻るには、cd('/')
コマンドを入力します。
例5-2 構成MBeanのナビゲートと表示
wls:/offline> connect('username','password') wls:/mydomain/serverConfig> ls() dr-- AdminConsole dr-- AppDeployments dr-- BridgeDestinations dr-- Clusters dr-- CoherenceClusterSystemResources dr-- CoherenceServers dr-- CustomResources dr-- DeploymentConfiguration dr-- Deployments ... -r-- AdminServerName myserver -r-- AdministrationMBeanAuditingEnabled false -r-- AdministrationPort 9002 -r-- AdministrationPortEnabled false -r-- AdministrationProtocol t3s -r-- ArchiveConfigurationCount 5 ... wls:/mydomain/serverConfig> cd('Servers') wls:/mydomain/serverConfig/Servers> ls() dr-- AdminServer dr-- managed1 dr-- myserver wls:/mydomain/serverConfig/Servers> cd('myserver') wls:/mydomain/serverConfig/Servers/myserver> ls() dr-- COM dr-- CandidateMachines dr-- Cluster dr-- CoherenceClusterSystemResource dr-- DefaultFileStore dr-- ExecutiveQueues dr-- FederationServices dr-- IIOP dr-- JTAMigrateableTarget dr-- Log dr-- Machine dr-- NetworkAccessPoints ... -r-- AcceptBacklog 50 -r-- AdminReconnectIntervalSeconds 10 -r-- AdministrationPort 0 -r-- AdministrationProtocol t3s -r-- AutoKillIfFailed false -r-- AutoMigrationEnabled false -r-- AutoRestart true .... wls:/mydomain/serverConfig/Servers/myserver> cd('Log/myserver') wls:/mydomain/serverConfig/Servers/myserver/Log/myserver> ls() dr-- DomainLogBroadcastFilter dr-- LogFileFilter dr-- MemoryBufferFilter dr-- StdoutFilter -r-- BufferSize 8 -r-- DateForatPattern MMM d, yyyy h:mm:ss a z -r-- DomainLogBroadcastFilter null -r-- DomainLogBroadcastSeverity Warning -r-- DomainLogBroadcasterBufferSize 1 -r-- FileCount 7 -r-- FileMinSize 500 -r-- FileName myserver.log -r-- FileTimeSpan 24 -r-- Log4jLoggingEnabled false -r-- LogFileFilter null -r-- LogFileRotationDir null -r-- LogFileSeverity Debug -r-- LoggerSeverity Info -r-- LoggerSeverityProperties null -r-- MemoryBufferFilter null -r-- MemoryBufferSeverity Debug -r-- MemoryBufferSize 500 -r-- Name myserver -r-- Notes null -r-- NumberOfFilesLimited false -r-- RedirectStderrToServerLogEnabled false -r-- RedirectStdoutToServerLogEnabled false -r-- RotateLogOnStartup true -r-- RotationTime 00:00 -r-- RotationType bySize -r-- ServerLogBridgeUseParentLoggersEnabled false -r-- StdoutFilter null -r-- StdoutFormat standard -r-- StdoutLogStack true -r-- StdoutSeverity Warning -r-- Type Log -r-x freezeCurrentValue Void : String(attributeName) -r-x isSet Boolean : String(propertyName) String(propertyName) -r-x unSet Void : String(propertyName)
ls
コマンドの出力情報において、d
はcd
コマンドを使用できるMBean (ファイル・システムのディレクトリに類似)を示し、r
は読取り可能なプロパティを示し、w
は書込み可能なプロパティを示し、x
は実行可能な操作を示します。
実行時MBeanの参照
構成情報と同様に、WebLogic Server実行時MBeanは階層データ構造として配列されています。管理サーバーに接続されているとき、serverRuntime
またはdomainRuntime
コマンドを入力して、実行時MBean階層にアクセスします。
serverRuntime
コマンドにより、WLSTはサーバーの実行時管理オブジェクトのルートServerRuntimeMBean
に置かれ、domainRuntime
コマンドは、ドメイン全体の実行時管理オブジェクトのルートDomainRuntimeMBean
に置かれます。管理対象サーバーに接続されているとき、実行時MBeanのルートはServerRuntimeMBean
です。ドメイン実行時MBean階層は、管理サーバー上のみに存在します。管理対象サーバーに接続されているときにdomainRuntime
コマンドは使用できません。
『Oracle WebLogic Server MBeanリファレンス』のServerRuntimeMBeanに関する項およびDomainRuntimeMBeanに関する項を参照してください。
cd
コマンドの使用により、WLSTは任意の実行時子MBeanにナビゲートできます。実行時MBeanのナビゲーション・モデルは、構成MBeanのナビゲーション・モデルと同じです。ただし、実行時MBeanは基底となる管理対象リソース(管理サーバー上のドメイン全体の実行時MBeanを除く)と同じサーバー・インスタンスにのみ存在し、すべて編集不可です。
実行時MBeanサンプルのナビゲートと表示
例5-3のコマンドは、管理サーバーのインスタンスに接続してナビゲートし、サーバーおよびドメイン実行時MBeanを表示するようWLSTに指示します。
例5-3 実行時MBeanのナビゲートと表示
wls:/offline > connect('username','password') wls:/mydomain/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:/mydomain/serverRuntime> ls() dr-- ApplicationRuntimes dr-- ClusterRuntime dr-- ConnectorServiceRuntime ... dr-- JDBCServiceRuntime dr-- JMSRuntime dr-- JTARuntime dr-- JVMRuntime dr-- LibraryRuntimes dr-- MailSessionRuntimes dr-- RequestClassRuntimes dr-- ServerChannelRuntimes dr-- ServerSecurityRuntime dr-- ServerServices dr-- ThreadPoolRuntime dr-- WLDFAccessRuntime dr-- WLDFRuntime dr-- WTCRuntime dr-- WorkManagerRuntimes -r-- ActivationTime 1093958848908 -r-- AdminServer true -r-- AdminServerHost -r-- AdminServerListenPort 7001 -r-- AdminServerListenPortSecure false -r-- AdministrationPort 9002 -r-- AdministrationPortEnabled false ... wls:/mydomain/serverRuntime> domainRuntime() Location changed to domainRuntime tree. This is a read-only tree with DomainRuntimeMBean as the root. For more help, use help('domainRuntime') wls:/mydomain/domainRuntime> ls() dr-- DeployerRuntime ... dr-- ServerLifecycleRuntimes dr-- ServerRuntimes -r-- ActivationTime Tue Aug 31 09:27:22 EDT 2004 -r-- Clusters null -rw- CurrentClusterDeploymentTarget null -rw- CurrentClusterDeploymentTimeout 0 -rw- Name mydomain -rw- Parent null -r-- Type DomainRuntime -r-x lookupServerLifecycleRuntime javax.management.ObjectName : java.lang.String wls:/mydomain/domainRuntime>
例5-4のコマンドは、管理対象サーバー・インスタンス上の実行時MBeanのナビゲートと表示をWLSTに指示します。
例5-4 管理対象サーバー上の実行時MBeanのナビゲートと表示
wls:/offline> connect('username','password','t3://localhost:7701') Connecting to weblogic server instance running at t3://localhost:7701 as username weblogic ... Successfully connected to managed Server 'managed1' that belongs to domain 'mydomain'. Warning: An insecure protocol was used to connect to the server. To ensure on-the-wire security, the SSL port or Admin port should be used instead. wls:/mydomain/serverConfig> serverRuntime() wls:/mydomain/serverRuntime> ls() dr-- ApplicationRuntimes dr-- ClusterRuntime ... dr-- JMSRuntime dr-- JTARuntime dr-- JVMRuntime dr-- LibraryRuntimes dr-- MailSessionRuntimes dr-- RequestClassRuntimes dr-- ServerChannelRuntimes dr-- ServerSecurityRuntime dr-- ThreadPoolRuntime dr-- WLDFAccessRuntime dr-- WLDFRuntime dr-- WTCRuntime dr-- WorkManagerRuntimes -r-- ActivationTime 1093980388931 -r-- AdminServer false -r-- AdminServerHost localhost -r-- AdminServerListenPort 7001 -r-- AdminServerListenPortSecure false -r-- AdministrationPort 9002 -r-- AdministrationPortEnabled false ... wls:/mydomain/serverRuntime>
MBean階層間のナビゲート
MBean階層内をナビゲートできます。
実行時階層から構成MBeanにナビゲートするには、serverConfig
コマンド(管理サーバーのみに接続している場合はdomainConfig
コマンド)を入力します。これにより、WLSTはserverRuntime
またはdomainRuntime
コマンドを入力する直前のナビゲート先の構成MBeanに置かれます。
次のコマンド例では、実行時MBean階層から構成MBean階層にナビゲートし、また戻ってくるようWLSTに指示しています。
wls:/mydomain/serverRuntime/JVMRuntime/managed1> serverConfig() Location changed to serverConfig tree. This is a read-only tree with DomainMBean as the root. For more help, use help('serverConfig') wls:/mydomain/serverConfig> cd ('Servers/managed1') wls:/mydomain/serverConfig/Servers/managed1> cd('Log/managed1') wls:/mydomain/serverConfig/Servers/managed1/Log/managed1> serverRuntime() wls:/mydomain/serverRuntime/JVMRuntime/managed1>
実行時MBean階層から再びserverConfig
コマンドを入力することで、WLSTは直前のナビゲート先の構成MBeanに置かれます。
wls:/mydomain/serverRuntime/JVMRuntime/managed1> serverConfig()
wls:/mydomain/serverConfig/Servers/managed1/Log/managed1>
『WebLogic Server WLSTコマンド・リファレンス』のツリー・コマンドに関する項を参照してください。
また、currentTree
コマンドを使用して現在のMBean階層の場所を保存し、そこから別の場所にナビゲートした後、再びそこに戻ることもできます。WebLogic Server WLSTコマンド・リファレンスのcurrentTreeを参照してください。
たとえば:
wls:/mydomain/serverConfig/Servers/managed1/Log/managed1> myLocation = currentTree() wls:/mydomain/serverConfig/Servers/managed1/Log/managed1> serverRuntime() wls:/mydomain/serverRuntime> cd('JVMRuntime/managed1') wls:/mydomain/serverRuntime/JVMRuntime/managed1>myLocation() wls:/mydomain/serverConfig/Servers/managed1/Log/managed1>
MBeanと属性の検索
特定のMBeanおよび属性を探すには、find
コマンドを使用します。WLSTは、属性およびその値を格納するMBeanへのパス名を返します。
パスで指定されたMBeanを戻すには、getMBean
コマンドを使用します。『WebLogic Server WLSTコマンド・リファレンス』のfindに関する項およびgetMBeanに関する項を参照してください。
たとえば:
wls:/mydomain/edit !> find('DebugEjbCaching') finding 'DebugEjbCaching' in all registered MBean instances ... /Servers/AdminServer/ServerDebug/AdminServer false /Servers/managed2/ServerDebug/managed2 false wls:/mydomain/edit !> bean=getMBean('Servers/managed2/ServerDebug/managed2') wls:/mydomain/edit !> print bean [MBeanServerInvocationHandler]bea.com:Name=managed2,Type=ServerDebug, Server=managed2 wls:/mydomain/edit !>
ノート:
インスタンスが見つからない場合、getMBean
は例外をスローしません。
別の方法としては、getPath
コマンドが、指定したMBeanインスタンスのMBeanパス、または現在のMBean階層内のMBeanのためのObjectName
を返します。WebLogic Server WLSTコマンド・リファレンスのgetPathを参照してください。
たとえば:
wls:/mydomain/serverConfig> path=getPath('com.bea:Name=myserver,Type=Server') wls:/mydomain/serverConfig> print path Servers/myserver
WebLogicのその他のMBeanとカスタムMBeanへのアクセス
WebLogic Server MBeanへのアクセスに加え、WLSTでは、WebLogic IntegrationおよびWebLogic Portalが提供するMBeanにアクセスできます。また、ユーザーが作成および登録したMBean(カスタムMBean)にアクセスし、独自のリソースを構成または監視できます。
(独自のMBeanの作成および登録については、Oracle WebLogic Server JMXによる管理可能アプリケーションの開発のカスタムMBeanのインストゥルメントと登録を参照してください。)
WebLogicのその他のMBeanまたはカスタムMBeanをナビゲートするには、カスタムMBeanが登録されているMBeanサーバー(実行時またはドメイン実行時)に応じて、custom
コマンドまたはdomainCustom
コマンドを入力します。custom
は、WLSTが管理サーバーまたは管理対象サーバーのインスタンスに接続されている場合に入力できます。domainCustom
は、WLSTが管理サーバーに接続されている場合にのみ入力できます。domainCustom,の詳細は、ドメイン実行時MBeanサーバー内のカスタムMBeanへのアクセス
を参照してください。
WLSTでは、WebLogic Server以外のMBeanはすべてカスタムMBeanとして処理されます。
-
WLSTでは、カスタムMBeanは階層に配置されずに、JMXオブジェクト名で編成およびリストされます。同じJMXドメイン名を持つMBeanはすべて、同じWLSTディレクトリにリストされます。たとえば、
mycompany:
で始まるJMXオブジェクト名で登録したカスタムMBeanはすべて、mycompany
という名前のディレクトリに配置されます。 -
カスタムMBeanでは、スタブが使用できないため、
cmo
変数を使用できません。 -
カスタムMBeanは編集できますが、WebLogic Serverの変更管理プロセスの対象にはなりません。MBeanの
get
、set
、invoke
、create
、およびdelete
コマンドは、最初にstartEdit
コマンドを入力せずにMBeanに対して使用できます。「WLSTオンラインを使用した既存のWebLogicドメインの更新」を参照してください。これはcustom()
ツリーには適用されますが、editCustom()
ツリーには適用されません。
実行時MBeanサーバー上のカスタムMBeanのナビゲート例は以下のとおりです。
wls:/mydomain/serverConfig> custom() Location changed to custom tree. This is a writable tree with No root. For more help, use help('custom') wls:/mydomain/custom> ls() drw- mycompany drw- anothercompany wls:/mydomain/custom> cd("mycompany") wls:/mydomain/custom/mycompany> ls() drw- mycompany:y1=x drw- mycompany:y2=x wls:/mydomain/custom/mycompany> cd("mycompany:y1=x") wls:/mydomain/custom/mycompany/mycompany:y1=x> ls() -rw- MyAttribute 10 wls:/mydomain/custom/mycompany/mycompany:y1=x>
ドメイン実行時MBeanサーバー内のカスタムMBeanへのアクセス
ドメイン実行時MBeanサーバー内に登録されているカスタムMBeanでメソッドを参照および呼び出す場合や操作を実行する場合は、domainCustom()
コマンドを使用します。この操作は、「WebLogicのその他のMBeanとカスタムMBeanへのアクセス」
で説明した、custom()コマンドを使用して実行時MBeanサーバー内に登録されているカスタムMBeanにアクセスする場合と似ています。domainCustom
コマンドは、WLSTが管理サーバーに接続されている場合にのみ入力できます。
domainCustom()
の使用方法の詳細は、WebLogic Server WLSTコマンド・リファレンスのdomainCustomを参照してください。
ドメイン実行時MBeanサーバー内のカスタムMBeanにアクセスする方法については、Oracle WebLogic Server JMXによるカスタム管理ユーティリティの開発のドメイン実行時MBeanサーバーへのローカル接続の確立を参照してください。独自のMBeanの作成および登録については、Oracle WebLogic Server JMXによる管理可能アプリケーションの開発のカスタムMBeanのインストゥルメントと登録を参照してください。
編集MBeanサーバー内のカスタムMBeanへのアクセス
編集MBeanサーバー内に登録されているカスタムMBeanでメソッドを参照、変更および呼び出す場合や操作を実行する場合は、editCustom()
コマンドを使用します。これは、custom()
コマンドの使用と類似していますが、編集MBeanServerのカスタムMBeanは編集操作も可能です。editCustom()
コマンドは、WLSTが管理サーバーに接続されている場合にのみ入力できます。
editCustom()
の詳細は、WebLogic Server WLSTコマンド・リファレンスのeditCustomを参照してください。
Oracle HTTP ServerなどのOracleシステム・コンポーネントでは、編集MBeanServerに表示されるカスタムMBeanを定義できます。これらのMBeanは編集可能で、WebLogic Serverの変更管理プロセスの対象になります。