Understanding and Analyzing Javacore - Part2

IBM Thread and Monitor Dump Analyzer for Java.

   Now let us try to understand the capabilities of one of the popular javacore analyzing tool from IBM. Here I will just explain the capabilities of the tool using a simple manually generated javacore of IBM JVM (JRE 1.6.0).

Go to File -> Open thread dumps and select the thread dump.






















This will open the selected thread dump and display the contents of the file. (Filename ,Timestamp,java version for which core has generated, OS details ,process architecture, heap size settings, Thread details, etc)  You can refer the part1 of this series for the contents of the javacore.
All those contents will be displayed here in a readable and graphical format.


Below I have captured some of the screens.
Here you can see the java heap information


The below screen gives you the entire java command line arguments


Next screen shows the memory segment analysis


Below screen gives you last garbage collection details.


To get memory segment analysis you can even go to Analysis menu and select "Memory Segment Analysis"
Note:- In the menu you can see "CPU Usage Analysis" ,The IBM javacore file does not contains the details for this analysis hence I have not explained it here.


For "Command Line Argument Analysis you can select the option in "Analysis" Menu ass in the below screen.


Next screen gives you the environment variable Analysis.


The below screen is for shared class cache analysis.


You can analysis the "Native Memory" here in below screen.


You can select the Thread status analysis option from Analysis menu to get the details of threads in Java.

















You will get a graphical view here.


As in below screen if you select the division of the graph you will get the details of the specific division. Eg: select "Waiting on Condition" to know about all the thread in Wait condition.


Next is Method Analysis.




















This gives you the method details as in below screen.


You can select the division of the graph to know about the methods.


Next screen gives you the "Thread Details"


As in below screen you can click on "State" to group the threads by status. Also select the thread to know the details about the specific thread.


You can load multiple dumps in the tool, Select and analysis each dump.


You can even compare the thread by selecting both the thread dump and select "Compare thread" option in Analysis menu.

The comparison results view will be as below.


Note:- I did not provided the screen for "Monitor details" and "Compare Monitor" as the current thread doesn't contains any monitor contention.

With this I am stopping the Part - 2 here.  In next section I will get into more details of the Analysis and other things.



4 comments:

  1. Hi prashanth,
    THanks for the instruction.. Can you tell me what details we can send to developer during outofmemory issue and hung thread issue

    ReplyDelete
  2. Very nice blog post, thank for share.
    Bulk PDF Signer Automated Bulk Signing, eSigner Software, PDF Signer, Digital Signature Software

    ReplyDelete
  3. Amazing , It is very interesting facts.
    Export software Software for export India, Export Documents Software, Generates Photo Offers, export documentation software, Barcode Software, Label Software.

    ReplyDelete