How to generate a jvm Thread dump for troubleshooting

Document created by mike_aronson Employee on Sep 25, 2015Last modified by frank_wetzler970218 on Sep 26, 2018
Version 11Show Document
  • View in full screen mode
The Boomi atom, molecule and cloud nodes run on a JVM.


For some issues, you may need to generate a JVM stack dump for troubleshooting performance or other issues.
To generate a stack dump, you should be able to use jstack as described at this link:


jstack - Stack Trace 


It should be distributed with the JDK you have on the server already for the atom, molecule or cloud.
If you only have the JRE installed, then you will need to download and install the JDK as well.


To use jstack, you would need to determine the process id (PID) of the head node or local atom.


The PID should be a number obtained by looking at either the Windows Task Manager or Windows
Services Manager of your head node or local atom.  Once you have the Windows Task Manager
open, select the 'Details' tab and then find the name of your atom listed.  You should then be
able to see the PID under its column. There will likely be two atom.exe processes listed as seen below. One is for the windows service and one is for the actual JVM you want the thread dump from. Identify the PID for the 'atom.exe' that is using the most Memory as this is the one that likely represents the JVM for which you want the thread dump.



Then run this command in a command window with admin privileges from a directory where you can write the thread dump file to:
[JDK install dir]\bin\jstack -l <pid> >> [A file name like atom_threaddump.txt] 
Note if the JVM is hung you should try running this command [JDK install dir]\bin\jstack -Fl <pid> >> [A file name like atom_threaddump.txt] 


An example might look like the screen shot below:


On linux you should run the jstack command as the same user as the boomi software runs under. Also the version of the JDK may have to match the version the JVM running as the boomi user is running under. If jstack cannot connect to the JVM you might try the -F option to see the issue  

- [JDK install dir]\bin\jstack -l -F <pid> >> [A file name like atom_threaddump.txt] 


Then copy the output from this command and analyze it for performance.


If needed, attach this output to the support case as appropriate.


2 people found this helpful