This is the documentation for FishEye 3.5. View the latest version of

Unknown macro: {spacejump}

or visit the latest FishEye documentation home page.

If FishEye stops responding or is showing poor performance, providing thread dumps to support can help diagnose the problem.


(info) If you were asked by Atlassian technical support to create the thread dump, please take 4 thread dumps with a time interval in between (eg. 30 secs) so we can see some patterns. Attach the log file to the support ticket.

Generating a Thread Dump for Windows

If you are not running FishEye via run.bat, click on the console window and press <CTRL>+BREAK

Jstack

jstack.exe and jps.exe are located under the bin folder in the JDK.

  1. Find the PID of the FishEye/Crucible process 

    C:\>jps
    104348 Jps
    3348 fisheyeboot.jar
  2. Run jstack.exe and pass in the PID of fisheyeboot.jar and redirect the output to an external file 

    C:\>jstack 3348 > c:\thread_dump_1.txt

Generating a Thread Dump for a Windows Service

  1. Click on "Configure FishEye" (FishEye under the Start menu)
    1. <installation folder>\bin\service.bat manage
  2. Click on the "Java" tab.
  3. Scroll to the bottom of "Java Options" and add the following:

    -Dcom.sun.management.jmxremote
    -Dcom.sun.management.jmxremote.port=4242
    -Dcom.sun.management.jmxremote.local.only=false
    -Dcom.sun.management.jmxremote.authenticate=false
    -Dcom.sun.management.jmxremote.ssl=false
  4. Click on "Stop FishEye" (FishEye under the Start menu)
    1. <installation folder>\bin\service.bat stop
  5. Click on "Start FishEye" (FishEye under the Start menu)
    1. <installation folder>\bin\service.bat start
  6. Open VisualVM – installed with the JDK or via separate download: http://visualvm.java.net/

  7. Click on "File" > "Add JMX Connection".

  8. In the "Connection" field, type the following: localhost:4242
  9. Click "OK".
  10. Once the process loads click on the "Threads" tab.
  11. Click the button "Thread Dump" to generate a thread dump.
  12. Right-click on each thread dump and select "Save As..." to save the dump to disk

Generating a Thread Dump on Linux, including Solaris and other Unixes

Find the process ID of the JVM and use the ps command to get list of all processes:

kill -3 <pid>

Note: This will not kill your server (so long as you included the "-3" option, no space in between).
The thread dump will be printed to FishEye's standard output (fisheye.out).
If you have trouble generating the thread dumps with this method, then use the method "Generating a Thread dump for Windows" as they can also apply for linux, etc.

Jstack

Sun JDK 1.5 and above ship with native tool called jstack to perform thread dump. To use the tool find the Proccess ID and execute the command:

jstack <ProccessID>

Output

Standard logging for FishEye is sent to the FISHEYE_INST/var/log/fisheye-debug.log.* files, in the FISHEYE_INST directory. Thread dumps are an exception since they dump the threads of the entire application server - they'll appear in the FISHEYE_INST/var/log/fisheye.out file. You can search for the term "thread dump" in the log file for the beginning of the dump.

Thread Dump Tools

  • No labels