Foglight Application Performance Monitoring
Back in March, Cameron Haight posted a blog about APM vendors needing to bring some joy to the market.
As we have been developing the Foglight APM SaaS Edition, we have been focused on simplifying the APM end-user experience and finding novel ways of enabling users to discover the information hidden in their APM data. I have heard nice feedback about the Investigate portion of the product and how it lets users interact with their raw trace data in something way more than a clinical way.
For those of you not familiar yet with the Investigate UI, it is designed to give advanced performance engineers access to raw trace data. We set out to solve a tackle a challenging problem with this feature—how to help users visualize and understand the impact of multiple dimensions on application requests. As my co-worker Steve Fox pointed out (about the 26:30 point in the video) in a great Velocity session, graphs and charts are limited to 3 dimensions of data. So, when people want to look at more than 3 dimensions, they have to do things like page back and forth between different views, trying to hold the context of the previous view, or craft their own portal style view with custom, but unlinked 2 and 3 dimension charts where they have to infer the relationships across the charts.
What we did to solve this problem was create configurable visual filter chains that link and cascade data from one graph to another. In other words I can create and show multiple side-by-side charts, but by selecting a set of data in one chart based on some dimension, I am now able to pass just that new selected set of requests to rest of the charts in the filter chain.
In the screen shot below, you can see an example of the default template, which contains 4 different charts:
Now, look at screenshot below. Notice that when I selected requests in the first chart, it limited and passed the 26 specific requests to rest of the charts, updating to reflect how the different dimensions are interacting together. In this case specifically, I can see that the bad requests are spread out across different locations (not a geographical problem), that they are distributed among browser and mobile browser hits (not a mobile problem), but that they are all related to a single request type.
Of course, we provide access to the individual traces so the developers can isolate the specific problem in the code, but I’ll discuss that UI another day.
Out of the box, there are 16 different templates to get you started, but you can also create your own custom templates using 9 different chart/graph types spanning the 60+ properties associated with request data.
Come try it with your own data
About Rick S
Rick is a Senior Product Manager working on APM in Foglight.