The purpose of this article is to show the possibilities of server-side monitoring using Geronimo, a Java^TM^ 2 Platform Enterprise Edition (J2EE) application server.
Monitoring an application server from inside saves network traffic, since monitored information can be analyzed, filtered, summarized, and set into an application specific context inside the server.
For example an application server could send an e-mail when the response time of our online shop gets unacceptable big.
A simple web application has been used to develop a server-side monitoring component that monitors three servlets and gives alarm when the overall average processing time exceeds a certain given threshold.
What is needed
- JDK 5.0 (because of the used JConsole tool; it is not included in JDK1.4): http://java.sun.com/javase/downloads/index.jsp
- Standard Geronimo: http://geronimo.apache.org/downloads.html
- Sample Code: http://www.informatik.hs-furtwangen.de/~reich/Geronimo/GMontiorSample.zip (Contents: Sources, shell scripts, archives, README, etc.)
Introduction
A lot of articles
References
- Sun's java management extensions (jmx) page. http://java.sun.com/javase/technologies/core/mntr-mgmt/javamanagement/.
- JConsole reference. http://java.sun.com/j2se/1.5.0/docs/tooldocs/share/jconsole.html.
- JConsole manual. http://java.sun.com/j2se/1.5.0/docs/guide/management/jconsole.html.
- JSR-77: J2EE management specification. http://jcp.org/en/jsr/detail?id=77.
- Apache home page. http://www.apache.org/.
- Tomcat home page. http://tomcat.apache.org/.
- OpenEJB home page. http://incubator.apache.org/openejb/.
- Martin Fowler; Inversion of control containers and the dependency injection pattern.; http://www.martinfowler.com/articles/injection.html; January; 2004.
- Niel Frod; Dependency injection in apache geronimo, part 1: A new way to look at decoupling in j2ee applications.; http://www-128.ibm.com/developerworks/opensource/library/os-ag-ioc1/; February; 2006.
- Niel Frod; Dependency injection in apache geronimo, part 2: The next generation.; http://www-128.ibm.com/developerworks/opensource/library/os-ag-ioc2/; February; 2006.