Lets say you were looking to buy a new car. You visit a car dealer to look at your options. You tell the sales guy the type of car you're after and he directs you to a red one. You like red so you open the door and sit behind the wheel. As you cast your eye over the interior your intelligent brain registers an incongruence. THERES NO DASHBOARD! The steering wheel, gear shift, pedals are all there, the things looks like a car should except there are no gauges, dials, or dash lights. In a state of confusion you turn to the sales guy and blurt out "what the hell?" The sales guy smirks at you, puts his hand on his chin in a thoughtful pose and says "We ran out of budget when we were engineering this model of car, so we went into production without the usual dashboard". "But how would I know if the engine is overheating and about to cook itself?" The sales guys shrugs. "What about oil pressure. Surely you have a sensor for that?" The sales guys shrugs again.
In a state of disbelief, you quickly decide to put some distance between yourself and such an misconceived infernal machine just incase its evilness somehow infects you while in close proximity.
So obviously no car manufacturer would do such a bizarre thing, but how is then that sometimes, people put a complicated piece of server software (such as BizTalk) into production without the ability to see what's going on "under the hood"? It, of course, depends on how critical the application is, but if you know it will cost $$$ if your application is down, you need a good level of application level monitoring.
What I see quite often is customers who have OS level monitoring of the BizTalk boxes. This is typically a product like Tivoli or BMC Patrol. Maybe they have configured their OS monitoring tool to monitor whether the BizTalk host process is in the started state or not. That is about the equivalent of having a light on the dashboard of your car telling you if the engine is running or not. Not very helpful. (But I might add, it is better than nothing at all).
The problem with OS level monitoring is that none of these tools have visibility into the health, stability or performance of the application level (BizTalk) processes. As we know, BizTalk is a complicated beast. There is a lot going on under the hood. Don't you think it makes sense to have maximum knowledge of what's going on so you can fix problems before they become critical? Isn't that why we have engine diagnostics in our cars these days?
Take a look at the BizTalk Server 2006 R2 Microsoft Operations Manager Management Pack list of contents. http://technet.microsoft.com/en-au/library/aa561939.aspx. Isn't that the kind of list that you'd really want to have monitored for your production application?
Here's how it is: OS level monitoring is not enough. If you care at all about best practices you need to know what's going on in BizTalk. The more visibility you have the better prepared you will be for the production down critical situations. The only product that does this out of the box is Microsoft Operations Manager 2005/System Center Operations Manager 2007 with the BizTalk management pack.
For more information on this topic, go here: http://technet.microsoft.com/en-au/library/aa577973.aspx