Towards Adaptive Monitoring of Java EE Applications

Continuous monitoring of software systems under production workload provides valuable data about application runtime behavior and usage. An adaptive monitoring infrastructure allows to control, for instance, the overhead as well as the granularity and quality of collected data at runtime. Focusing on application-level monitoring, this paper presents how we extended the monitoring framework Kieker by reconfiguration capabilities based on JMX technology. The extension allows to change the instrumentation of software operations in monitored distributed Java EE applications. As a proof-of-concept, we demonstrate the adaptive monitoring of a distributed sample Java EE application deployed to a JBoss application server. Keywords-Continuous monitoring, adaptive monitoring, aspectoriented programming, Java EE, JMX

[1]  Walter Binder,et al.  HotWave: creating adaptive tools with dynamic aspect-oriented programming in Java , 2009, GPCE '09.

[2]  Okanović Dušan,et al.  One implementation of the system for application version tracking and automatic updating , 2008, ICSE 2008.

[3]  Martin Kalin,et al.  Java Web Services: Up and Running , 2009 .

[4]  John Murphy,et al.  Non-intrusive end-to-end runtime path tracing for J2EE systems , 2006, IEE Proc. Softw..

[5]  Wilhelm Hasselbring,et al.  Self-Adaptive Software Performance Monitoring , 2011, Software Engineering.

[6]  Akhil Sahai,et al.  Message tracking in SOAP-based Web services , 2002, NOMS 2002. IEEE/IFIP Network Operations and Management Symposium. ' Management Solutions for the New Communications World'(Cat. No.02CH37327).

[7]  Juha Lindfors,et al.  JMX: Managing J2EE with Java Management Extensions , 2002 .

[8]  Wilhelm Hasselbring,et al.  Continuous Monitoring of Software Services: Design and Application of the Kieker Framework , 2009 .

[9]  Barney Dalgarno,et al.  Information Flow Control Using the Java Virtual Machine Tool Interface (JVMTI) , 2010, 2010 International Conference on Availability, Reliability and Security.

[10]  Lionel C. Briand,et al.  Toward the Reverse Engineering of UML Sequence Diagrams for Distributed Java Software , 2006, IEEE Transactions on Software Engineering.

[11]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.