Thread dumps and increased logging levels are your next action.
I've got the thread dump and for my surprise, the "problematic" thread was the JVM GC Thread. I've tried the -Xincgc flag (sun jvm) but have no success. Have you ever experienced a situation like that?
PS.: When this thread begin to consume CPU (99,9%) the application performance decrease very much.
You have a memory leak and the garbage collector is spinning trying to reclaim memory that it cannot.
I've found some useful information about -XX flats and GC parallel and concurrent algorithms in the Sun JVM (for multi CPU machines) and I guess my problem is solved.
But, in any case, do you recommend some profiling tool to use with JBoss?
Thank you very much,
I've worked in the development of JBossProfiler.
It has been pretty stable, even having to download through CVS and generate the .WAR/.SAR at this present time.
Also, at this time, I didn't convert the code for JVMTI (which is a newer version of the API I have used for Java 5). This means you can use the current version without any problem since you don't use any special GC option while capturing the data from your app-Server.
Anyway, if you want to use that and you have a hard time compiling it, let me know them I can provide you a binary distribution.
Information on how to use it is located on the wiki page for JbossProfiler.