Tigris: a DSL and Framework for Monitoring Software Systems at Runtime

03/29/2021
by   Jhonny Mertz, et al.
0

The understanding of the behavioral aspects of a software system is an essential enabler for many software engineering activities, such as adaptation. This involves collecting runtime data from the system so that it is possible to analyze the collected data to guide actions upon the system. Consequently, software monitoring imposes practical challenges because it is often done by intercepting the system execution and recording gathered information. Such monitoring may degrade the performance and disrupt the system execution to unacceptable levels. In this paper, we introduce a two-phase monitoring approach to support the monitoring step in adaptive systems. The first phase collects lightweight coarse-grained information and identifies relevant parts of the software that should be monitored in detail based on a provided domain-specific language. This language is informed by a systematic literature review. The second phase collects relevant and fine-grained information needed for deciding whether and how to adapt the managed system. Our approach is implemented as a framework, called Tigris, that can be seamlessly integrated into existing software systems to support monitoring-based activities. To validate our proposal, we instantiated Tigris to support an application-level caching approach, which adapts caching decisions of a software system at runtime to improve its performance.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/01/2023

Software Runtime Monitoring with Adaptive Sampling Rate to Collect Representative Samples of Execution Traces

Monitoring software systems at runtime is key for understanding workload...
research
05/17/2018

Model-Driven Engineering of Self-Adaptive Software with EUREMA

The development of self-adaptive software requires the engineering of an...
research
02/11/2018

An Investigation of the Monitoring Activity in Self Adaptive Systems

Runtime monitoring is essential for the violation detection during the u...
research
01/02/2020

SmartWatts: Self-Calibrating Software-Defined Power Meter for Containers

Fine-grained power monitoring of software activities becomes unavoidable...
research
07/08/2020

BISM: Bytecode-Level Instrumentation for Software Monitoring

BISM (Bytecode-Level Instrumentation for Software Monitoring) is a light...
research
02/05/2020

CBR: Controlled Burst Recording

Collecting traces from software running in the field is both useful and ...
research
05/25/2023

Automatic Extraction of Time-windowed ROS Computation Graphs from ROS Bag Files

Robotic systems react to different environmental stimuli, potentially re...

Please sign up or login with your details

Forgot password? Click here to reset