Back to top

Bachelor's Thesis Michael Rose

Last modified Apr 30, 2015

Abstract

Application Performance Monitoring (APM) is an essential aspect of software engineering and development. Inevitable for finding performance bottlenecks in an application or monitoring its current state while it is running in production, performance monitoring is often underestimated. However, monitoring CPU and memory consumption, file system and network traffic is not always sufficient. Application-level data is needed to be able to detect problems and solve them fast.

In this thesis we investigate how APM can be used for and integrated in an existing Java web-application, namely Tricia by infoAsset. The main focus hereby lies on covering the specific requirements posed by the application being scalable and deployed in a cloud infrastructure. We derive a variety of different but essential metrics for Tricia which can mostly be transferred to general Java web-applications. Furthermore, the required means of evaluating the gathered information are proposed as well as how they can be applied. We then take a look at already existing solutions for employing APM, including the examination of existing standards. Before advancing to the practical part, we conduct an interview with an employee of a large company who is experienced in APM. Afterwards, a complete APM solution is developed for Tricia. Key design and architectural decisions are presented in addition to important implementation details. Furthermore, we evaluate the solution in cooperation with infoAsset in the context of a real problem.