We designed Dawn not only to measure the status of SilverStripe websites, but also to understand how well they were performing. But how do you define “good” performance?  If a site takes half a second to display a webpage, is that extremely fast, or extremely slow?

It’s all relative.  Which is one of the reasons that it’s critical in any performance-monitoring tool be able to access the historical performance as well as the current performance.  All of a sudden, 500 milliseconds is good if it historically took a second or more, and poor if it took far less time.

Having historical data also allows you to prove the value of changes you make to your website environment.  Being able to objectively show how much a change has improved the performance of the website allows you to justify the cost of that change to the people who hold the purse string. It also lets you know when you’ve made a change for the worse, and if you can find out when the website started performing poorly, you’ll likely find the specific change that made things perform poorly.

In many ways, being able to see the past is more important than being able to see the future.  Even future extrapolation in Dawn is based primarily on what trends have been continuing over the site’s history.  The longer the history, the more data from which Dawn can draw predictions.

And of course, there’s no underestimating the idea that you can draw your own predictions from Dawn’s history; if your website peaks every Friday, you know it’ll likely continue to peak on Friday.  Perhaps it might be a good idea to provision extra processing power only on Fridays – instead of spending the money for a full time solution.

In many ways, the power of Dawn isn’t just that it monitors your web environment and alerts you to threshold violations, but that it also gives you the context that you need to make significant decisions to improve your web environment.  Because the only thing better than immediate alerts to problems is, of course, making the right decisions so you don’t have the problem in the first place.