注意 : このドキュメントで説明するコマンドライン ユーティリティは、WebLogic Server 10.0 で非推奨になりました。代わりに、『Oracle Fusion Middleware Oracle WebLogic Server SNMP 管理ガイド』の「WebLogic SNMP コマンドライン ユーティリティ」で説明されているコマンドライン ユーティリティを使用してください。 |
WebLogic Server では Simple Network Management Protocol (SNMP) を使用して、企業全体の管理システムとの通信を実現できます。WebLogic 管理データ (管理対象オブジェクト) を収集し、このデータを SNMP 通信モジュール (トラップ通知) に変換し、このトラップ通知をサード パーティの SNMP 管理システムに転送する WebLogic Server サブシステムを、WebLogic SNMP エージェントと呼びます。WebLogic SNMP エージェントは管理サーバ上で動作し、ドメイン内のすべての管理対象サーバから管理対象オブジェクトを収集します。
WebLogic SNMP エージェントには、次のことを実行できるコマンドライン インタフェースが用意されています。
WebLogic Server 管理対象オブジェクトを検索する
テスト目的のために WebLogic Server トラップを生成および受信する
以下の節では、コマンドライン インタフェースから WebLogic SNMP エージェントを操作する方法について説明します。
WebLogic Server で SNMP を使用する方法については、以下のマニュアルを参照してください。
WebLogic SNMP エージェントのコマンドライン インタフェース用に環境を設定するには、次の手順に従います。
『Oracle WebLogic Server インストール ガイド』の説明に従って、WebLogic Server ソフトウェアをインストールおよびコンフィグレーションします。
WebLogic Server 管理対象オブジェクトを検索する場合、『Oracle Fusion Middleware Oracle WebLogic Server Administration Console ヘルプ』の「SNMP を使用した WebLogic Server のモニタ」の説明に従って WebLogic SNMP エージェントを有効にします。
コマンド プロンプト (シェル) を開いて、次のスクリプトを呼び出します。
WL_HOME
\server\bin\setWLSEnv.sh
(Windows では setWLSEnv.cmd
)
WL_HOME
は、WebLogic Server のインストール先ディレクトリです。
スクリプトでは、サポートされる JDK をシェルの PATH
環境変数に追加し、WebLogic Server クラスを CLASSPATH
変数に追加します。
すべての WebLogic SNMP エージェント コマンドは次の形式を取ります。
java command-name arguments
表 4-1 では、ほとんどの WebLogic SNMP エージェント コマンドに共通する引数について説明します。
表 4-1 共通のコマンドライン引数
引数 | 定義 |
---|---|
-d |
コマンド出力にデバッグ情報とパケット ダンプを含める。 |
-v {v1 | v2} |
SNMP エージェントとの通信に SNMPv1 と SNMPv2 のどちらを使用するのかを指定する。 SNMP エージェントをコンフィグレーションするときに [トラップ バージョン] フィールドで設定したものと同じ SNMP バージョンを指定しなければならない (『Oracle Fusion Middleware Oracle WebLogic Server Administration Console ヘルプ』の「SNMP エージェントの作成」を参照)。 値を指定しない場合、コマンドは |
-c snmpCommunity [@server_name | @domain_name |
WebLogic SNMP エージェント用に設定するコミュニティ名、および必要であれば対話するオブジェクトをホストするサーバ インスタンスを指定する。 管理サーバ上の管理対象オブジェクトを要求するには、次のように指定する。
snmpCommunity
1 つの管理対象サーバ上の管理対象オブジェクトを要求するには、次のように指定する。
snmpCommunity@server_name
ドメイン内のすべてのサーバ インスタンスの管理対象オブジェクトを要求するには、次の形式でコミュニティ文字列を指定する。
snmpCommunity@domain_name
この引数の値を指定しない場合、値は |
-p snmpPort
|
WebLogic SNMP エージェントがリクエストをリスンするポート番号。 値を指定しない場合、コマンドは |
-t timeout
|
コマンドが SNMP エージェントに正常に接続するのを待機するミリ秒数。 値を指定しない場合、コマンドは |
-r retries
|
SNMP エージェントへの接続の試行が失敗した場合に、コマンドが再試行する回数。 値を指定しない場合、コマンドは最初に試行が失敗した時点で終了する。 |
host
|
WebLogic SNMP エージェントが動作している WebLogic Server の管理サーバをホストするコンピュータの DNS 名または IP アドレス。 |
表 4-2 に、WebLogic Server 管理対象オブジェクトとオブジェクト インスタンスを検索するコマンドの概要を示します。
表 4-2 WebLogic Server 管理対象オブジェクトからデータを取得するためのコマンドの概要
コマンド | 説明 |
---|---|
snmpwalk |
MIB 内の指定されたノード以下にあるすべての管理対象オブジェクトとインスタンスを返す。 「snmpwalk」を参照。 |
snmpgetnext |
指定する OID の直後にある管理対象オブジェクトまたはインスタンスを返す。 「snmpgetnext」を参照。 |
snmpget |
1 つまたは複数の OID に対応する管理対象オブジェクトを返す。 「snmpget」を参照。 |
MIB 内の指定されたノード以下にあるすべての管理対象オブジェクトまたはインスタンスを返します。
テーブル形式のオブジェクト OID を指定すると、コマンドはそのすべてのオブジェクト インスタンスと、関連するすべての子オブジェクトおよびインスタンスを返します。
java snmpwalk [-d] [-v (v1,v2)] [-c snmpCommunity] [-p snmpPort] [-t timeout] [-r retries] host OID
表 4-3 に、snmpwalk
に渡される OID
の引数を示します。
以下の例では、管理サーバにデプロイされているすべてのアプリケーションの名前を取得します。アプリケーション名の管理対象オブジェクトは、applicationRuntimeName
です。これは applicationRuntimeTable
オブジェクトの子です (http://download.oracle.com/docs/cd/E12839_01/apirefs.1111/e14145/BEA-WEBLOGIC-MIB.asn1.zip
を参照)。
java snmpwalk localhost .1.3.6.1.4.1.140.625.105.1.15
サンプルの MedRecServer を実行するコンピュータからこのコマンドを呼び出す場合、コマンドは以下の抜粋のような出力を返します。出力には、applicationRuntimeName
オブジェクトのインスタンスごとに完全な OID が含まれています。
Object ID: .1.3.6.1.4.1.140.625.105.1.15.32.49.102.98.97.100.97.102.99.57.48.50. 102.48.98.53.54.100.100.49.54.50.54.99.54.99.49.97.97.98.53.100.97 STRING: MedRecServer_uddiexplorer Object ID: .1.3.6.1.4.1.140.625.105.1.15.32.54.98.49.101.57.56.54.98.98.50.57.10 0.54.55.48.100.56.98.101.101.97.55.48.53.57.99.49.51.56.98.97.99 STRING: MedRecServer_StartupEAR Object ID: .1.3.6.1.4.1.140.625.105.1.15.32.56.48.97.53.50.52.99.101.53.54.57.54 .52.52.99.54.48.55.54.100.102.49.54.97.98.52.48.53.98.100.100.49 STRING: MedRecServer_wl_management_internal2 ...
以下の例では、medrec
ドメインのすべてのサーバにデプロイされている、すべてのアプリケーションの名前を取得します。
java snmpwalk -c public@medrec localhost .1.3.6.1.4.1.140.625.105.1.15
以下の例では、管理対象サーバ MS1
にデプロイされているすべてのアプリケーションの名前を取得します。
java snmpwalk -c public@MS1 localhost .1.3.6.1.4.1.140.625.105.1.15
指定する 1 つまたは複数の OID の直後にある管理対象オブジェクトまたはオブジェクト インスタンスの説明を返します。テーブル形式のオブジェクトを指定した場合、最初の子管理対象オブジェクトが返されます。スカラー オブジェクトを指定した場合、オブジェクトの最初のインスタンスが返されます。
snmpwalk
コマンドが提供する再帰的なリストとは異なり、このコマンドでは、OID の順序が次となる管理対象オブジェクトまたはインスタンス 1 つのみに関する説明を返します。一連の snmpgetnext
コマンドを並べて指定すると、snmpwalk
コマンドと同じ結果が得られます。
java snmpgetnext [-d] [-v (v1,v2)] [-c snmpCommunity] [-p snmpPort] [-t timeout] [-r retries] host OID [OID]...
表 4-4 に、snmpgetnext
コマンドに渡される OID の引数を示します。
以下の例では、管理サーバにデプロイされているアプリケーションの名前を取得します。アプリケーション名の管理対象オブジェクトは、applicationRuntimeName
です。これは applicationRuntimeTable
オブジェクトのスカラー オブジェクトおよび子です (http://download.oracle.com/docs/cd/E12839_01/apirefs.1111/e14145/BEA-WEBLOGIC-MIB.asn1.zip
を参照)。
java snmpgetnext localhost .1.3.6.1.4.1.140.625.105.1.15
サンプルの MedRecServer を実行するコンピュータからこのコマンドを呼び出す場合、コマンドは以下のような出力を返します。
Response PDU received from /127.0.0.1, community: public Object ID: .1.3.6.1.4.1.140.625.105.1.15.32.49.102.98.97.100.97.102.99.57.48.50. 102.48.98.53.54.100.100.49.54.50.54.99.54.99.49.97.97.98.53.100.97 STRING: MedRecServer_uddiexplorer
管理サーバにデプロイされている他のアプリケーションがあるかどうかを調べるには、snmpgetnext
コマンドの出力を追加の snmpgetnext
コマンドの入力として使用できます。
java snmpgetnext localhost .1.3.6.1.4.1.140.625.105.1.15.32.49.102.98.97.100.97.102.99.57.48.50.102. 48.98.53.54.100.100.49.54.50.54.99.54.99.49.97.97.98.53.100.97
コマンドは以下のような出力を返します。
Response PDU received from /127.0.0.1, community: public Object ID: .1.3.6.1.4.1.140.625.105.1.15.32.54.98.49.101.57.56.54.98.98.50.57.10 0.54.55.48.100.56.98.101.101.97.55.48.53.57.99.49.51.56.98.97.99 STRING: MedRecServer_StartupEAR
以下の例では、2 つの OID を指定して、管理サーバにデプロイされているアプリケーションの名前、および JDBC 接続プールの名前を取得します。コマンド例の OID は、アプリケーション名の applicationRuntimeName
オブジェクトと JDBC 接続プール名の jdbcConnectionPoolRuntimeName
です。
java snmpgetnext localhost .1.3.6.1.4.1.140.625.105.1.15.1.3.6.1.4.1.140.625.190.1.15
サンプルの MedRecServer を実行するコンピュータからこのコマンドを呼び出す場合、コマンドは以下のような出力を返します。
Response PDU received from /127.0.0.1, community: public Object ID: .1.3.6.1.4.1.140.625.105.1.15.32.49.102.98.97.100.97.102.99.57.48.50. 102.48.98.53.54.100.100.49.54.50.54.99.54.99.49.97.97.98.53.100.97 STRING: MedRecServer_uddiexplorer Object ID: .1.3.6.1.4.1.140.625.190.1.15.32.53.53.49.48.50.55.52.57.57.49.99.102 .55.48.98.53.50.54.100.48.100.53.53.52.56.49.57.49.49.99.99.99 STRING: MedRecPool-PointBase
1 つまたは複数のオブジェクト インスタンスの値を取得します。このコマンドでは、管理対象オブジェクトの OID は使用できません。
java snmpget [-d] [-v (v1,v2)] [-c snmpCommunity] [-p snmpPort] [-t timeout] [-r retries] host object-instance-OID [object-instance-OID]...
表 4-5 に、snmpget
コマンドに渡される object-instance-OID
引数を示します。
以下の例では、管理サーバの serverRuntimeState
および serverRuntimeListenPort
管理対象オブジェクト インスタンスを取得します。これらのオブジェクトは、どちらも serverRuntimeTable
オブジェクトの子です (http://download.oracle.com/docs/cd/E12839_01/apirefs.1111/e14145/BEA-WEBLOGIC-MIB.asn1.zip
を参照)。
java snmpget localhost .1.3.6.1.4.1.140.625.360.1.60.32.102.100.48.98.101.102.100.99.102.52.98. 97.48.48.49.102.57.53.51.50.100.102.53.55.97.101.52.56.99.99.97.99 .1.3.6.1.4.1.140.625.360.1.35.32.102.100.48.98.101.102.100.99.102.52. 98.97.48.48.49.102.57.53.51.50.100.102.53.55.97.101.52.56.99.99.97.99
サンプルの MedRecServer を実行するコンピュータからこのコマンドを呼び出す場合、コマンドは以下のような出力を返します。
Response PDU received from /127.0.0.1, community: public Object ID: .1.3.6.1.4.1.140.625.360.1.60.32.102.100.48.98.101.102.100.99.102.52. 98.97.48.48.49.102.57.53.51.50.100.102.53.55.97.101.52.56.99.99.97.99 STRING: RUNNING Object ID: .1.3.6.1.4.1.140.625.360.1.35.32.102.100.48.98.101.102.100.99.102.52. 98.97.48.48.49.102.57.53.51.50.100.102.53.55.97.101.52.56.99.99.97.99 INTEGER: 7001
表 4-6 は、テスト目的でトラップを生成および受信するコマンドの概要です。
表 4-6 WebLogic Server に関する情報を取得するためのコマンドの概要
コマンド | 説明 |
---|---|
snmptrapd |
トラップを受信してトラップについての情報を出力するデーモンを起動します。 「snmptrapd」を参照。 |
snmpv1trap |
SNMPv1 トラップを作成して、指定したホスト上で動作し、指定したポート番号でリスンする SNMP マネージャまたはトラップ デーモンに、そのトラップを配信します。 「snmpv1trap」を参照。 |
トラップを受信してトラップについての情報を出力するデーモンを起動します。
java snmptrapd [-d] [-c snmpCommunity] [-p TrapDestinationPort]
表 4-7 に、snmptrapd
コマンドに渡される引数を示します。
SNMPv1 トラップを作成して、指定したホスト上で動作し、指定したポート番号でリスンする SNMP マネージャまたはトラップ デーモンに、そのトラップを配信します。
このコマンドの呼び出しの一部として、送信するトラップ パケット内のフィールドに対する値を指定できます。指定する値は、WebLogic Server MIB で定義されているトラップに解決されなければなりません。WebLogic Server トラップとトラップ パケットに必要なフィールドの詳細については、『Oracle Fusion Middleware Oracle WebLogic Server SNMP 管理ガイド』の「WebLogic Server 通知の OID」を参照してください。
java snmpv1trap [-d] [-c snmpCommunity] [-p TrapDestinationPort] TrapDestinationHost .1.3.6.1.4.140.625 agent-addr generic-trap specific-trap timestamp [OID {INTEGER | STRING | GAUGE | TIMETICKS | OPAQUE | IPADDRESS | COUNTER} value] ...
表 4-8 に、snmpv1trap
コマンドに渡される引数を示します。
表 4-8 snmpv1trap の引数
引数 | 定義 |
---|---|
-c snmpCommunity
|
トラップのコミュニティ名。SNMP マネージャ (またはトラップ デーモン) は、このコミュニティ名を使用するようにコンフィグレーションされている場合にのみトラップにアクセスできる。 値を指定しない場合、コマンドは |
-p TrapDestinationPort
|
SNMP マネージャまたはトラップ デーモンがリスンするポート番号。 値を指定しない場合、コマンドは |
TrapDestinationHost
|
SNMP マネージャまたはトラップ デーモンをホストするコンピュータの DNS 名または IP アドレス。 |
.1.3.6.1.4.140.625 |
トラップの |
agent-addr
|
トラップの このフィールドは、トラップが生成されたコンピュータを示す。
|
generic-trap
|
トラップの 有効な値のリストについては、『Oracle Fusion Middleware Oracle WebLogic Server SNMP 管理ガイド』の「WebLogic Server 通知の OID」を参照。 |
specific-trap
|
トラップの 有効な値のリストについては、『Oracle Fusion Middleware Oracle WebLogic Server SNMP 管理ガイド』の「WebLogic Server 通知の OID」を参照。 |
timestamp
|
トラップの このフィールドは、SNMP エージェントが最後に再初期化した時からトラップが発行された時までの時間を示す。
|
OID {INTEGER | STRING |
GAUGE | TIMETICKS | OPAQUE |
IPADDRESS | COUNTER} value
|
(省略可能) トラップの [ 名前と値の組み合わせごとに、OID、値のタイプ、値を指定する。 たとえば、ログ メッセージ トラップには、トラップが生成される時刻を示すために .1.3.6.1.4.1.140.625.100.5 STRING "2:00 pm" |
以下の例では、trapTime
および trapServerName
変数バインドを含むログ メッセージ トラップを生成します。ポート 165 からトラップをブロードキャストします。次に例を示します。
java snmpv1trap -p 165 localhost .1.3.6.1.4.140.625 localhost 6 60 1000 .1.3.6.1.4.1.140.625.100.5 STRING "2:00 pm" .1.3.6.1.4.1.140.625.100.10 STRING localhost
上記の例で注目すべき点は以下のとおりです。
6
は「他の WebLogic Server トラップ」を指定する generic trap 値。
60
は WebLogic Server がログ メッセージ トラップの識別に使用する specific trap 値。
.1.3.6.1.4.1.140.625.100.5
は trapTime
変数バインドの OID。.1.3.6.1.4.1.140.625.100.10
は、trapServerName
変数バインドの OID。
ポート番号 165
でリスンする SNMP マネージャ (またはトラップ デーモン) がトラップを受信します。トラップ デーモンが 165
でリスンしている場合は、次のように返します。
Trap received from: /127.0.0.1, community: public Enterprise: .1.3.6.1.4.140.625 Agent: /127.0.0.1 TRAP_TYPE: 6 SPECIFIC NUMBER: 60 Time: 1000 VARBINDS: Object ID: .1.3.6.1.4.1.140.625.100.5 STRING: 2:00 pm Object ID: .1.3.6.1.4.1.140.625.100.10 STRING: localhost
snmpv1trap
コマンドを使用して WebLogic Server トラップを生成し、トラップ デーモンを介してそれらを受信するには、次の手順に従います。
コマンド プロンプト (シェル) を開いて、次のスクリプトを呼び出します。
WL_HOME
\server\bin\setWLSEnv.sh
(Windows では setWLSEnv.cmd
)
WL_HOME
は、WebLogic Server のインストール先ディレクトリです。
トラップ デーモンを起動するには、次のコマンドを入力します。
java snmptrapd
別のシェルを開いて、次のスクリプトを呼び出します。
WL_HOME
\server\bin\setWLSEnv.sh
(Windows では setWLSEnv.cmd
)
トラップを生成するには、次のコマンドを入力します。
java snmpv1trap localhost .1.3.6.1.4.140.625 localhost 6 60 1000
snmpv1trap
コマンドは serverStart
トラップを生成して、ポート 162 からブロードキャストします。
トラップ デーモンが動作するシェルでは、デーモンが次のように出力します。
Trap received from: /127.0.0.1, community: public Enterprise: .1.3.6.1.4.140.625 Agent: /127.0.0.1 TRAP_TYPE: 6 SPECIFIC NUMBER: 60 Time: 1000 VARBINDS:
WebLogic SNMP エージェントを使用して WebLogic Server トラップを生成し、トラップ デーモンを介してそれらを受信するには、次の手順に従います。
ドメインの管理サーバを起動し、SNMP エージェントを有効にします。
『Oracle Fusion Middleware Oracle WebLogic Server Administration Console ヘルプ』の「SNMP エージェントの作成」を参照してください。
トラップ デーモンを表すトラップ送り先を作成します。トラップ送り先がポート 165
を使用するようにコンフィグレーションします。Administration Console のその他のデフォルト値はそのままにしておきます。
『Oracle Fusion Middleware Oracle WebLogic Server Administration Console ヘルプ』の「トラップ送り先の作成」を参照してください。
コマンド プロンプト (シェル) を開いて、次のスクリプトを呼び出します。
WL_HOME
\server\bin\setWLSEnv.sh
(Windows では setWLSEnv.cmd
)
WL_HOME
は、WebLogic Server のインストール先ディレクトリです。
トラップ デーモンを起動するには、次のコマンドを入力します。
java snmptrapd -p 165
管理サーバを再起動します。
管理サーバが起動すると、SNMP エージェントは serverStart
トラップを生成して、ポート 165 からそれをブロードキャストします。
トラップ デーモンが動作するシェルでは、デーモンが次のように出力します。
Trap received from: /127.0.0.1, community: public Enterprise: .1.3.6.1.4.140.625 Agent: /127.0.0.1 TRAP_TYPE: 6 SPECIFIC NUMBER: 65 Time: 1000 VARBINDS: