Requirement Directed Automatic Instrumentation Generation for Program Monitoring and Measuring
Abstract
Monitoring and measuring a program's execution involves specifying what to monitor and measure, collecting required data necessary for satisfying the specification, and presenting the results. We present a system for monitoring and measuring the execution of programs written in high level languages. The system has knowledge of the language and execution model of the monitored program, and knowledge of dependency between monitoring requirements. This enables a user to express his requirements of monitoring and measuring in terms of concepts close to his application domain. The monitoring and measuring system is an automatic programmer, which generates instrumentation to collect only the data necessary to satisfy the user's requirements expressed by the specification. The collected data are represented as relations and accessed via a query language.