-
ヒープダンプの取得方法を教えてください。 以下の手順で取得できます。
※取得においては以下の点にご注意ください。
- 取得に時間を要する場合があります。
- ヒープダンプの取得が完了するまでProselfの動作が停止します。
-
Windows OSの場合
-
Proselfが動作しているサーバー上からProselfのプロセスID(PID)を確認するためにタスクマネージャーを起動し、詳細表示に変更します。
-
プロセスタブ内のtomcat6.exe、java.exeのPIDの値を確認します。
Windows Server上で動作させている場合、java.exeのプロセスは3つございますのでそれぞれのPIDをご確認ください。
-
以下のコマンドを実行します。
■tomcat6.exeのプロセス
{Javaのインストールフォルダ}\bin\jmap.exe -dump:format=b,file=C:\tmp\proself.dump {PID}
例えば、Javaのインストールフォルダが C:\Program Files\AdoptOpenJDK\jdk-11.0.15+10 であり、tomcat6.exeのPIDが 1234 である場合は以下のコマンドとなります。
C:\Program Files\AdoptOpenJDK\jdk-11.0.15+10\bin\jmap.exe -dump:format=b,file=C:\tmp\proself.dump 1234
■java.exeのプロセス
{Javaのインストールフォルダ}\bin\jmap.exe -dump:format=b,file=C:\tmp\java{PID}.dump {PID}
例えば、Javaのインストールフォルダが C:\Program Files\AdoptOpenJDK\jdk-11.0.15+10 であり、java.exeのPIDが 5678 である場合は以下のコマンドとなります。
C:\Program Files\AdoptOpenJDK\jdk-11.0.15+10\bin\jmap.exe -dump:format=b,file=C:\tmp\java5678.dump 5678
※C:\tmpは保存先フォルダの例です。取得先に応じて読み替えてください。
-
上記コマンド実行によりC:\tmpフォルダ内に下記ファイルが生成されます。
proself.dump
java{PID}.dump(3ファイル)
-
Proselfが動作しているサーバー上からProselfのプロセスID(PID)を確認するためにタスクマネージャーを起動し、詳細表示に変更します。
-
Linux OSの場合
-
Proselfが動作しているサーバー上からProselfのPIDを確認するためにコマンドライン上でjpsコマンドを実行します。
-
jpsコマンドにより表示される以下ProselfのPIDを確認します。
Bootstrap
Extractor
JettyServer
DerbyServer
-
以下のコマンドを実行します。
■Proselfのプロセス(Bootstrapのみ)
# jmap -dump:format=b,file=/tmp/proself.dump {PID}
例えば、BootstrapのPIDが 12345 である場合は以下のコマンドとなります。
# jmap -dump:format=b,file=/tmp/proself.dump 12345
■Proselfのプロセス(Bootstrap以外)
# jmap -dump:format=b,file=/tmp/java{PID}.dump {PID}
例えば、ExtractorのPIDが 67890 である場合は以下のコマンドとなります。
# jmap -dump:format=b,file=/tmp/java67890.dump 67890
※/tmpは保存先フォルダの例です。取得先に応じて読み替えてください。
-
上記コマンド実行により/tmpフォルダ内に下記ファイルが生成されます。
proself.dump
java{PID}.dump(3ファイル)
-
Proselfが動作しているサーバー上からProselfのPIDを確認するためにコマンドライン上でjpsコマンドを実行します。
(最終更新日:2024/01/10) - 取得に時間を要する場合があります。