Towards the end of 2014, Docker expanded support for three major players in the cloud space: AWS, Microsoft Azure, and Google Compute. Series D funding of Docker reached almost $100 million. With growing adoption, Docker is an important trend for future application architectures. But this isn’t new here at AppNeta. We’ve heard announcements for Docker support, and our customers have asked about it too, but TraceView has always had Docker support. With our focus on the application and distributed transaction tracing, our instrumentation is designed with distributed systems in mind.
Let’s start with a crazy idea: Application Performance Monitoring should be app-centric. APM should be able to monitor effectively across any architecture, container or otherwise. Other APM tools use a more host or tier-centric user interface that requires fundamental changes when customers adopt a Docker architecture. TraceView is designed with distributed architectures in mind, regardless of the server architecture that supports them.
TraceView keeps track of your user’s request as it passes through the layers of your application. We call this method distributed transaction tracing, and it lets us effortlessly transition into the age of platforms like Docker. This distributed approach allows us to identify the layers of the application that your user’s request enters and leaves regardless of the number of hosts because each host has instrumentation to establish the entry and exit events for each layer. By instrumenting different Docker processes as we’ve traditionally done with hosts we can show you the full path and timings of your user’s request.
The demand for many independently scalable parts has, in part, led to the success of Docker, but the requirements of keeping open connections from each Docker process can be restrictive. Monitoring Docker using other APM products requires open connections from each active process. This effectively multiplies the configuration overhead induced on the application side.
We haven’t announced Docker support. Because we’ve supported it all along. In fact TraceView’s Instrumentation team uses Docker containers as part of our QA process as well. See our documentation on how to install TraceView on Docker and an example dockerfile.