How does the java application work? (UseMon case)

I’m working with a Java Enterprise solution, running 100+ of java applications communicating with each other by RMI/MQ/JMS over MQ/SOAP.

There was a need for getting more information from how the applications «worked inside» and which methods called another application and so on.

Paul Rene Jørgensen and steinar.cook created a application called UseMon which is a monitoring system for trends , response time and dependency analysis of plain Java applications or big multi-clustered Java Enterprise applications running in production.

Usemon loggs the monitoring data to a MySQL database in our environment.

I then created a php-solution which fetches data from the database (by reading the Usemon v1.0 Database Schema.pdf document.)

I’ve so far created a page which analyze the communication in the applications and creates a dot-language graph which then is exported to a png by using GraphViz .

Here is a result for calls running a couple of seconds.

Here you can see the applications with it’s methods inside the «application-box» and how they call each others and other methods in other applications.

I have a lot to do at work now, so it may be a little while before I can continue on this application.