Google has launched Google Cloud Trace, a beta service to help developers diagnose performance problems in production applications running on Google App Engine.
Cloud Trace can find the instruction streams or traces that result in slow requests or slow response times and offer a detailed report on where an application is spending time while attempting to meet a request.
The service was announced at Google I/O in San Francisco in June, and it became available in beta January 8. Google often leaves a new service in beta for a year or more before making it a generally available, supported service.
Cloud Trace looks a lot like a made-for-Linux version of Dynamic Tracing (DTrace), the real-time probe into running systems to identify and isolate performance problems. DTrace was created by Bryan Cantrill when he was a Sun Microsystems software engineer. Cantrill is currently CTO at cloud supplier Joyent, a would-be Amazon Web Services rival. At one point, the Linux teams at Oracle were working on a Linux port of DTrace, which would have made the technology open-source code.
[Want to learn more about Joyent and DTrace? See Joyent Joins Containers Debate]
Google Cloud Trace can perform a sort of "replay" analysis of a process stream to identify which users experienced slow request response times and then compose a report that identifies where the time is being spent in the system. Some slowdowns affect only a handful of users but nevertheless produce urgent complaints. Developers often have trouble identifying what's different about the response they obtained from the application versus other users. Cloud Trace is intended to speed the process up.
Cloud Trace can break the steps of a single request down into the number of milliseconds that each part takes, pinpointing for developers the likely location of the slowdown. Cloud Trace can also look at a set of requests across many users, identifying the ones with the highest latencies and pinpointing the users most likely to experience delays.
Cloud Trace may also be used to compare the latencies of requests before and after changes are made to the application, "such as rolling out a patch," Google spokesmen said.
Cloud Trace may be activated by a developer using the Google Developers Console and following a series of steps under the Monitoring function. Once Cloud Trace is turned on for a particular application, it has "very little overhead," product manager Pratul Dublish said in a blog accompanying the announcement. When it's left on to run with the application, it starts tracing the instruction path made by requests and recording elapsed times.
Cloud Trace currently works with applications running on App Engine or as a managed VM in the Google infrastructure. Dublish didn't indicate whether Cloud Trace will also be available to Google Compute Engine users, but officials probably want to watch Cloud Trace used by customers on App Engine before releasing it to the more likely production environment for customer apps.
Google Cloud Trace was the subject of an in-depth talk at Google Cloud Platform Live in November.
Attend Interop Las Vegas, the leading independent technology conference and expo series designed to inspire, inform, and connect the world's IT community. In 2015, look for all new programs, networking opportunities, and classes that will help you set your organization’s IT action plan. It happens April 27 to May 1. Register with Discount Code MPOIWK for $200 off Total Access & Conference Passes.