Identifying CPU hotspots with line-of-code precision is critical when it comes to troubleshooting performance issues, identifying performance bottlenecks or improving response for a better customer experience.
Go’s pprof toolset has powerful tools for CPU profiling and visualizing different aspects of profiles. It is very useful in the development stage. However, profiling CPU usage in production environments has different requirements:
We need to be able to see CPU profiling information continuously to have a historical baseline for optimization or troubleshooting.
Production environments are increasingly becoming container-based and automatically orchestrated, for example, when using Kubernetes, which implies that it might not be easy to locate and connect to a production machine to initiate the profiler remotely.
If the application has crashed, we need information before the fact.
Using IBM Instana™ AutoProfile for automatic CPU profiling
The IBM Instana always-on AutoProfile feature is designed for profiling and monitoring production environments. It automates the collection of CPU profiles.
After you restart or deploy the application, the profiles will be available in the Dashboard in a historically comparable form.