HP posted a blog entry where they talk about a survey they did last year – probably with very large customers. They asked the companies if they used synthetic transaction monitoring.
What the hell is that? The idea is that your monitoring solution can instruct an agent or agents to perform tasks against a business service to get a real world view of its health and performance. This user perspective gives you so much more than just testing the up/down status of the web service or the SQL services. It’s not a replacement for those monitors but it is a completion of the monitoring solution.
According to HP, “about half the respondents said they did. This ties in with a recent Aberdeen study that found 57% of companies didn’t do user experience monitoring”.
If you’re using Microsoft System Center Operation Manager 2007 or 2007 R2 then you have the ability to do this out of the box for your web applications. Not only that but you can also test TCP Ports and databases using OLE.
OpsMgr includes a set of monitoring templates. Using a simple wizard you can very quickly capture a browser session. You will then assign this new monitor to an agent or agents and define how often it will be run. This means that those agents will perform the web browsing session that you just captured. If the session fails or is too slow then there will be an alert. You can go on and build a distributed application using this new monitor. That can combine the health of web services, SQL services, network devices and the user perspective for the application you are monitoring. You can take this even further and use the new SLA monitoring pack to see if the application meets the availability requirements of your business or customers.
If you’re feeling really adventurous then try this.
In this solution we have a web service that provides an application to customers on the Internet. The monitoring solution is in the same site as the web service. How can you get a users perspective on that when you don’t take the Internet into account? The solution is simple: lease a virtual hosted server from a service provider. Punch a hole through the firewalls to allow the encrypted agent traffic from the new hosted agent server to an OpsMgr management server. The agent will be certificate enabled so it can reside outside of the AD forest, i.e. in a workgroup. Now, if there is an Internet connection issue at the web server site you will get an alert from the agent.
We use synthetic web transactions at work for our customers. We know immediately when there’s an issue. In fact, we recently had an alert where a developer had made a mistake in a website. Without the alert, it’s possible that this might have gone unnoticed by the hosting company for some time, thus losing customers.
Check out the solution and test it out. Once you’re happy add it in to your alert subscriptions and you’ll soon see how powerful this solution is.
EDIT:1
I should have added something in here. What do you do if you’ve got no monitoring solution or if you’re in a (dedicated/virtual server) hosting environment with no monitoring, or worse, monitoring you don’t trust. You can do something pretty similar to the above using an outsourced monitoring service.
In this solution the owner of a hosted web service has subscribed to an outsourced monitoring solution. The OpsMgr server(s) perform normal agent monitoring using x.509 enabled agents or a OpsMgr Gateway on the hosted servers. That just requires the one TCP port to be opened outbound on the hosting firewall. The OpsMgr server also performs synthetic transactions against the web site(s). Optionally, the customer could just get synthetic transaction monitoring to verify that the hosting operator is living up to their contracted SLA requirements. You could even do this with a cheap’n’cheerful web hosting plan.