OSGiLarva : a monitoring framework supporting OSGi’s dynamicity

Service-Oriented Architecture is an approach where software systems are designed in terms of a composition of services. OSGi is a Service-Oriented Framework dedicated to 24/7 Java systems. In this Service-Oriented Programming approach, software is composed of services that may dynami- cally appear or disappear. In such a case, classical monitoring approaches with statically injected monitors into services cannot be used. In this paper, we describe ongoing work proposing a dynamic monitoring approach dedicated to local SOA systems, focusing particularly on OSGi. Firstly, we define two key properties of loosely coupled monitoring systems: dynamicity resilience and comprehensiveness. Next, we propose the OSGiLarva tool, which is a preliminary implementation targeted at the OSGi framework. Finally, we present some quantitative results showing that a dynamic monitor based on dynamic proxies and another based on aspect-oriented programming have equivalent performances.

[1]  Stéphane Frénot,et al.  LogOS: An Automatic Logging Framework for Service-Oriented Architectures , 2012, 2012 38th Euromicro Conference on Software Engineering and Advanced Applications.

[2]  Gordon J. Pace,et al.  Dynamic Event-Based Runtime Monitoring of Real-Time and Contextual Properties , 2009, FMICS.

[3]  Stefan Axelsson,et al.  An Approach to UNIX Security Logging , 1998 .

[4]  K. Rustan M. Leino,et al.  The Spec# Programming System: Challenges and Directions , 2005, VSTTE.

[5]  Fabio Casati,et al.  Event correlation for process discovery from web service interaction logs , 2011, The VLDB Journal.

[6]  Luciano Baresi,et al.  Validation of web service compositions , 2007, IET Softw..

[7]  Gordon J. Pace,et al.  LARVA --- Safer Monitoring of Real-Time Java Programs (Tool Paper) , 2009, 2009 Seventh IEEE International Conference on Software Engineering and Formal Methods.

[8]  Grigore Rosu,et al.  An overview of the MOP runtime verification framework , 2012, International Journal on Software Tools for Technology Transfer.

[9]  Stéphane Frénot,et al.  Liability in software engineering: overview of the LISE approach and illustration on a case study , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[10]  Thierry Jéron,et al.  Runtime enforcement of timed properties. (Enforcement à l'éxécution de propriétés temporisées) , 2012, RV.

[11]  Paul England,et al.  Practical Techniques for Operating System Attestation , 2008, TRUST.

[12]  Mohamed Kaâniche,et al.  Event log based dependability analysis of Windows NT and 2K systems , 2002, 2002 Pacific Rim International Symposium on Dependable Computing, 2002. Proceedings..

[13]  Stéphane Frénot,et al.  A Monitoring Approach for Dynamic Service-Oriented Architecture Systems , 2012 .

[14]  Hewijin Christine Jiau,et al.  A monitoring mechanism to support agility in service-based application evolution , 2012, SOEN.

[15]  Gary T. Leavens,et al.  JML: notations and tools supporting detailed design in Java , 2000 .