Collecting Performance Snapshots
Performance snapshots allow Tempo support team to analyze performance-related problems on your JIRA server without direct access to it.
Download and install Atlas-Yourkit plugin.
Get the latest version from this page. In JIRA 4.3 and later, you can install this plugin without JIRA restart.
The performance analysis plugin and redistributed parts of YourKit profiler are free, but if you'd like to analyze the performance snapshots yourself, you'll need to obtain YourKit license and download YourKit software (they provide a free evaluation period).
Load Profiling Agent
Open menu Administration | Troubleshooting and Support | YourKit Profiling (hint: in JIRA 4.4 and later versions, press g,g ("g" twice) and search for "yourkit").
If agent is already loaded, you'll see profiling controls - skip this step then.
Click Load Agent to load profiling agent. You'll need to have JDK installed. If you don't have JDK installed – follow the link on that page, download and install a matching JDK on JIRA host. It is not necessary to restart JIRA, just install the JDK and load agent.
There's certain risk that JVM will crash when loading profiling agent into JVM. A safer method of loading profiling agent is by changing JIRA start-up parameters (in setenv.sh
/setenv.bat
) and specifying agentpath
parameters with other options. See YourKit Documentation for details.
Capturing CPU Performance Snapshot
After profiling agent is loaded, you can click Start CPU Sampling on the YourKit page, then perform the actions that make JIRA slow, or wait for some time to collect the statistics. When finished, click Stop CPU Sampling. Performance snapshot will be saved to a directory within your JIRA Home, and the path will be shown on the YourKit page.
Capturing Memory Snapshot
Click "Take Memory Snapshot" - memory dump will be collected and saved in a file under your JIRA Home. Do not take memory snapshots unless you need to!
Taking memory snapshot is usually a long operation, which could last several minutes. During that time JIRA will be completely frozen. Make sure you've got enough disk space (several GBs). Don't panic - it does take that much time. After you click the button the page will be reloading. The browser may fail to load the page due to timeout - check JIRA logs to see when snapshot is finished.
Sending the Snapshots to Support Team
By default, snapshots are written into <jira_home>/yourkit/snapshots
directory. Locate it and create a ZIP archive of all relevant snapshot files.
Please send the ZIP to us as described here: Sending Files to Support Team.
After Profiling Session
There's no way to unload the profiling agent. You may want to continue running JIRA with the profiling agent loaded, since it does not product much overhead. (Make sure you have stopped all the monitoring.)
For a safer / cleaner environment, you can restart JIRA. (If you made additional effort to enable profiler agent in setenv
script, you'll need to comment that options out.)