Tip #232: Vanity monitoring

Woo-hoo! Our CRM uptime has been 99.999% for the past 6 months! One awesome internet facing deployment we cooked up!

What do you use to measure that?

One of these wonderful and free services

Uhm, you do realize that all you have been measuring is the uptime of your ADFS login page?

These are vanity metrics – they paint the pretty picture but are otherwise useless.

To record the fact that your CRM is up and running, you need to perform a login and get at least first authenticated page. CRM login is a complex process, depending on the needs it’s either federation or OAuth and neither is for the faint-hearted. None of the reasonably priced third-party monitoring tools I had a look at were capable to perform authentication magic out of the box.

Couple vendors, however, do provide enhanced page monitoring using webkit based browsers at their end that can replay user action recorded on the client side. http://site24x7.com/ offers standalone tools while http://alertsite.com/ uses browser plugin approach; either one works fine and does allow replaying of the login process:

alertsite

Note that this test falls through to the mobile site because browser is not identified correctly – something that probably is not difficult to do.

Before you drop everything and start recording massive scripts consider the following:

  1. Talk to your users. What matters to them is important. If they say it’s slow, there is no point in bombarding management with the figures proving otherwise.
  2. Don’t measure just “no error” response from the server. While you are at it, measure response times for specific pages. CRM that never sleeps but where every page takes 15 seconds to load is unlikely to be loved by the users.
  3. Most of the monitoring services offer world-wide coverage, some of them do allow selection of the monitoring servers. Use that. Page load times of 100ms from Greenland or Mongolia mean very little. Unless you have users there, in which case drop us a line – we’d love to hear from you!
  4. For on premises installation consider [temporarily] injecting monitoring scripts into generated HTML (some of the packages do allow that) – that will give you a much better approximation of the user-experience and much clearer picture of the bottlenecks.
  5. Consider monitoring not only CRM application but also CRM web services, especially if your CRM integrates with third-party packages that utilize them. Authentication will be a challenge, some vendors do support crafting SOAP requests explicitly, look into that.
  6. Understand the anatomy of the page load in CRM 2013. A lot of functionality is now delivered asynchronously and even though full page load time could span into seconds, page can be responsive and useful long before that.
  7. Add monitoring of your SQL Server – if you have one – the primary suspect on any given day when performance metrics decide to take the southbound route.
  8. On premises compliment monitoring with Dynamics CRM performance counters.

Leave a Reply

Your email address will not be published. Required fields are marked *