Understanding Application Footprint on Infrastructure with Code-Level Detail

Understanding application resource consumption

The nature of the application defines its resource impact on infrastructure. An application, which stores a lot of session data, will have big memory footprint. An application that processes data may have more CPU footprint.

Depending on the traffic or the number of data being processed, an application will be scaled out to multiple instances. That in turn scales its footprint.

Due to the time and space complexity of application code, the CPU and memory usage can get out of hand pretty quickly, requiring more and more instances. At that point, it is critical to know exactly how to prioritize optimization or troubleshooting efforts for maximum outcome, whether it is an infrastructure cost reduction or a response time improvement.

Analysing application footprint

It is therefore necessary to have a continuous visibility into total application footprint, including all of its instances, for every application.

When StackImpact agent is used, the information about application CPU and memory footprint as well as the execution hot spots will be automatically available in the Dashboard.

First, the Footprint section lists all the applications and their total footprint over selected time range.

Second, by selecting the application from the footprint chart’s breakdown, respective hot spot profiles will be opened, showing where exactly in the code the most resource consumption happens.

StackImpact is currently available for Go, Node.js and Python. See the respective GitHub repositories or the documentation for setup instructions.