Your dashboard is where you’ll spend most of your time using Instrumental. You’ll make graphs to monitor application performance in real time, keep an eye on server load, track user churn, and all other aspects of your application that matter to your business.
We spend a lot of time thinking about how we can make Instrumental’s dashboard better for you, and we recently made some updates to graph performance and sharing.
Improvements to Graph URLs
The URL for any graph you create now saves all the options you’ve selected. You can copy and paste this URL to any member of your team, and the selected time frame, duration, and any display options will be included. If you’ve created a stacked graph with no events, anyone you share the graph will see the same stacked graph with no events.
Here’s an example for how you might use this in production.
Let’s assume you’ve noticed an uptick in alerts over the last three days. You have some idea of where the issue is coming from, and you want to investigate the problem with another member of your team with a new shared graph.
You create a temporary graph to investigate the problem, setting the default time period and resolution to the last 3 days, in 20 minute increments. Once you’re confident you’ve found the correct time frame and have a graph that illustrates the issue, you can copy and paste the URL and share it with the members of your team.
Previously, any graphs you shared would save some of your options, but not all. It was impossible to predict how the graph would look once it was shared.
The URL will now save all the options you used to create the graph, including timeframe, notification visibility, and all other options on the graph. Anyone you share the URL with will see exactly what you’re seeing.
Permanently Updating Graphs
Second, we tracked down a bug that caused graphs to stop updating. Several customers display their application dashboard on a set of wall mounted monitors and they noticed some of their graphs stopped updating automatically when the browser tab was left open for a very long time.
We realized there was an issue with the underlying graph refresh code, and that’s where we started looking. We discovered a bug that caused the graph refresh code to stop attempting to update a graph if it experienced a failure. If a graph refresh attempt failed, the code would simply stop trying to refresh the graph.
We’ve updated the code around this behavior, and now the graph refresh code will retry an infinite number of times to refresh a graph, even if its initial attempt fails. This change should make life easier for everyone keeping an eye on application performance with Instrumental, even if you aren’t using an entire wall of monitors to track your app.