We use YourKit at work, and it is a pretty good profiles which runs on Linux. All of the instructions I saw talk about how to integrate with Tomcat if you have the tarball install. We install with the rpms, and so a bit of investigation was required.
First, install YourKit in /opt. I had it in ~/bin but I got a whole bunch of permission errors. I have SELinux set to permissive, and this still did not help. So, for me, it is installed in /opt/yjp-9.5.4/.
Next, I added the Config for the agent to the /etc/tomcat6/tocmcat6.conf file. The line looks like this:
JAVA_OPTS=”-agentpath:/opt/yjp-9.5.4/bin/linux-x86-64/libyjpagent.so=disablestacktelemetry,disableexceptiontelemetry,builtinprobes=none,delay=10000″
When you do a “service tomcat6 start” the init scripts will pick up the JAVA_OPTS variable. You can then laucnh the profiler and connect to do the needful in looking for performance issues.

