Continuous monitoring of software systems under production workload provides
valuable data about application runtime behavior and usage. An adaptive
monitoring infrastructure allows controlling, for instance, the overhead as
well as the granularity and quality of collected data at runtime. Focusing on
application-level monitoring, this paper presents the DProf approach which
allows changing the instrumentation of software operations in monitored
distributed applications at runtime. It simulates the process human testers
employ-monitoring only such parts of an application that cause problems.
DProf uses performance objectives specified in service level agreements
(SLAs), along with call tree information, to detect and localize problems in
application performance. As a proof-of-concept, DProf was used for adaptive
monitoring of a sample distributed application.