Nonintrusive Monitoring of Microservice-Based Systems

Fabio Pina, Jaime Correia, Ricardo Ângelo Filipe, Filipe Araújo, Jorge Cardroom · 2018

Breaking large software systems into smaller functionally interconnected components is a trend on the rise. This architectural style, known as “microservices”, simplifies development, deployment and management at the expense of complexity and observability. In fact, in large scale systems, it is particularly difficult to determine the set of microservices responsible for delaying a client's request, when one module impacts several other microservices in a cascading effect. Components cannot be analyzed in isolation, and without instrumenting their source code extensively, it is difficult to find the bottlenecks and trace their root causes. To mitigate this problem, we propose a much simpler approach: log gateway activity, to register all calls to and between microservices, as well as their responses, thus enabling the extraction of topology and performance metrics, without changing source code. For validation, we implemented the proposed platform, with a microservices-based application that we observe under load. Our results show that we can extract relevant performance information with a negligible effort, even in legacy systems, where instrumenting modules may be a very expensive task.

Read the paper · More papers on PaperTik