このタスクを使用して、ヒープ・ダンプを手動で生成します。この機能は、HP-UX および Solaris オペレーティング・システム上で実行中の WebSphere Application Server を含む Sun Java 仮想マシン (JVM) を使用しているときにはサポートされません。
始める前に
ヒープ・ダンプは、メモリー・リークが検出される場合にのみ生成されますが、
ヒープ・ダンプの生成は、数分間にわたって、WebSphere Application Server のパフォーマンスに重大な影響を及ぼす可能性がある
ということを理解しておく必要があります。メモリー・リーク解析のために複数のヒープ・ダンプを手動で生成する場合は、
2 つのヒープ・ダンプ間で大きなオブジェクトがリークしていることを確認してください。
この方法によって、問題判別ツールはメモリー・リークの原因を識別することができます。
このタスクについて
メモリー・リークの分析のために、ヒープ・ダンプを手動で生成するとよい場合があります。
WebSphere Application Server の Java 仮想マシン (JVM) では、自動ヒープ・ダンプ生成を使用可能にすることはできません。関連オーバーヘッドが原因で、ヒープ・ダンプを取るのに一定の時間を指定する場合があります。
WebSphere Application Server の JVM では、特殊な Java Bean である WebSphere Application Server 管理対象 Bean (MBeans) で
generateHeapDump オペレーションを使用して、ヒープ・ダンプを手動で作成することができます。
WebSphere Application Server の wsadmin ツールは、
スクリプトを実行する機能を提供します。wsadmin ツールを使用して、WebSphere Application Server のインストールのほか、
構成、アプリケーション・デプロイメント、およびサーバーのランタイム・オペレーションも管理することができます。
WebSphere Application Server は、Jacl および Jython スクリプト言語のみをサポートしています。wsadmin ツールについて詳しくは、wsadmin スクリプト・クライアントの開始 トピックを参照してください。
プロシージャー
- wsadmin スクリプト・クライアントを開始します。
スクリプト・コマンドの実行については、対話式で実行することからプロファイルによる実行まで、
さまざまなオプションがあります。
- 例えば、JVM Mbean で generateHeapDump オペレーションを呼び出します。
- JVM objectName の検出:
<wsadmin> set objectName [$AdminControl queryNames
WebSphere:type=JVM,process=<servername>,node=<nodename>,*]
- JVM MBean での generateHeapDump オペレーションの呼び出し:
<wsadmin> $AdminControl invoke $objectName generateHeapDump
ここで、
$ |
変数名を値で置換する Jacl 演算子です。 |
invoke |
コマンドです。 |
generateHeapDump |
呼び出すオペレーションです。 |
<servername> |
ヒープ・ダンプを生成するサーバーの名前です。 |
<nodename> |
<servername> が属するノードです。 |
次の作業
wsadmin コマンドを実行すると、ヒープ・ダンプのファイル名が戻されます。
ヒープ・ダンプの検索について詳しくは、
ヒープ・ダンプの検索と分析 のトピックを参照してください。複数のヒープ・ダンプがある場合には、多数のメモリー・リーク問題判別ツールを使用して、
問題を分析します。