検索 
       
[V5] スレッドダンプの取得方法を教えてください。

以下の手順で取得できます。

  • Windows OSの場合
    1. Proselfが動作しているサーバー上からProselfのプロセスID(PID)を確認するためにタスクマネージャーを起動し、詳細表示に変更します。
    2. プロセスタブ内のtomcat6.exe、java.exeのPIDの値を確認します。
      Windows Server上で動作させている場合、java.exeのプロセスは3つございますのでそれぞれのPIDをご確認ください。
    3. 以下のコマンドを実行します。
      ■tomcat6.exeのプロセス
      {Javaのインストールフォルダ}\bin\jstack.exe {PID} > C:\tmp\proself_stack1.txt
      10秒ほど経過したら以下のコマンドを実行します。
      {Javaのインストールフォルダ}\bin\jstack.exe {PID} > C:\tmp\proself_stack2.txt
      例えば、Javaのインストールフォルダが C:\Program Files\AdoptOpenJDK\jdk-11.0.15+10 であり、tomcat6.exeのPIDが 1234 である場合は以下のコマンドとなります。
      C:\Program Files\AdoptOpenJDK\jdk-11.0.15+10\bin\jstack.exe 1234 > C:\tmp\proself_stack1.txt
      C:\Program Files\AdoptOpenJDK\jdk-11.0.15+10\bin\jstack.exe 1234 > C:\tmp\proself_stack2.txt

      ■java.exeのプロセス
      {Javaのインストールフォルダ}\bin\jstack.exe {PID} > C:\tmp\java{PID}_stack1.txt
      10秒ほど経過したら以下のコマンドを実行します。
      {Javaのインストールフォルダ}\bin\jstack.exe {PID} > C:\tmp\java{PID}_stack2.txt
      例えば、Javaのインストールフォルダが C:\Program Files\AdoptOpenJDK\jdk-11.0.15+10 であり、java.exeのPIDが 5678 である場合は以下のコマンドとなります。
      C:\Program Files\AdoptOpenJDK\jdk-11.0.15+10\bin\jstack.exe 5678 > C:\tmp\java5678_stack1.txt
      C:\Program Files\AdoptOpenJDK\jdk-11.0.15+10\bin\jstack.exe 5678 > C:\tmp\java5678_stack2.txt

      ※C:\tmpは保存先フォルダの例です。取得先に応じて読み替えてください。
    4. 上記コマンド実行によりC:\tmpフォルダ内に下記ファイルが生成されます。
      proself_stack1.txt
      proself_stack2.txt
      java{PID}_stack1.txt(3ファイル)
      java{PID}_stack2.txt(3ファイル)
  • Linux OSの場合
    1. Proselfが動作しているサーバー上からProselfのPIDを確認するためにコマンドライン上でjpsコマンドを実行します。
    2. jpsコマンドにより表示される以下ProselfのPIDを確認します。
      Bootstrap
      Extractor
      JettyServer
      DerbyServer
    3. 以下のコマンドを実行します。
      ■Proselfのプロセス(Bootstrapのみ)
      # jstack {PID} > /tmp/proself_stack1.txt
      10秒ほど経過したら以下のコマンドを実行します。
      # jstack {PID} > /tmp/proself_stack2.txt
      例えば、BootstrapのPIDが 12345 である場合は以下のコマンドとなります。
      # jstack 12345 > /tmp/proself_stack1.txt
      # jstack 12345 > /tmp/proself_stack2.txt

      ■Proselfのプロセス(Bootstrap以外)
      # jstack {PID} > /tmp/java{PID}_stack1.txt
      10秒ほど経過したら以下のコマンドを実行します。
      # jstack {PID} > /tmp/java{PID}_stack2.txt
      例えば、ExtractorのPIDが 67890 である場合は以下のコマンドとなります。
      # jstack 67890 > /tmp/java67890_stack1.txt
      # jstack 67890 > /tmp/java67890_stack2.txt

      ※/tmpは保存先フォルダの例です。取得先に応じて読み替えてください。
    4. 上記コマンド実行により/tmpフォルダ内に下記ファイルが生成されます。
      proself_stack1.txt
      proself_stack2.txt
      java{PID}_stack1.txt(3ファイル)
      java{PID}_stack2.txt(3ファイル)

(最終更新日:2024/01/10)