Part of my job in dealing with OpsMgr is about MP development. It’s no mystery with the Operator Console just very basic monitoring can be achieved, even if the templates are there to help they’re just too few and too basic. So, to develop truly useful and complete MPs I always end in editing the XML stuff with some text editor (currently I’m using Notepad++). The authoring console delivered with SP1 is in fact incomplete and I found it useful just to insert display strings and KB articles. With the release of OpsMgr 2007 R2 a new and supposedly complete Authoring Console is going to be released, so I took the challenge to write my last MP from scratch using the RC version of the authoring console (the RC version is available to everybody on connect). I must confess that my trial ended soon, even if the console has now the ability to edit every section of a MP it lacks the usability needed to make it *the* development environment for MPs. I’m not saying the console is useless, but that it can help you just in intermediate difficulty tasks.In the case of my last MP I used it just in about 20% of my developing time. Nevertheless I encourage anyone willing to develop custom MPs to give it a try. Just a word of warning, when developing MPs try to focus on your goal, you have so many possibilities but just because it can be done it doesn’t mean it’s a good idea to do it. Bad MPs you can easily wreck havoc your entire OpsMgr Management Group.
So my plus:
- complete MP schema exposure
- Ability to import and encode report resources
- Great way to check for missing display strings and KB articles
- Integrated import/export from MG
- Integrated best practice analyzer
My top minus:
- the lack of copy and paste is one of misses that drives me crazy, MPs are for the most part copy & paste work. It would be great to be able to open Mps and use the types defined as building blocks for your own MP either via inheritance or copy and paste. During MP development is very common the need to access XML snippets, we have a growing library of such snippets we keep polishing to be used in other MPs. This is simply not possible with today Auth Console.
- Another challenge in MP development is get rid of XPATH queries and XPATH substitutions, these depends on the data type and the context. I mean the same data type needs to be referenced differently in monitor or say alerts parameters. This can quickly become error prone. The authoring console helps in substitutions but not in direct xpath query such as those used in detection modules. This is another topic that deserves to be developed further.
- Not all the configuration items for public types are correctly exposed in the UI, probably this is a bug in RC code
- The console doesn’t have an internal editor and the integration with external ones is still buggy and risky (in the sense you can easily lose your work)
- The auth console checks for syntax just in real time, it doesn’t allow you to have incomplete entities, this is really cumbersome. It happens to start configuring a module and then remembering you’re just missing that config parameter value, today you’re forced to abort the entire entity, add the proper missing pieces and restart again. It should be possible to disable real-time syntax checking and “compile” the MP on demand.
In conclusion MP authoring is still a multi tool challenge, you need a good script editor, a good xml editor, visual studio for reporting authoring and the authoring console for some glue and polishing. Since MP authoring isn’t and (imo) won’t be a task for everyone, probably the natural evolution of the Authoring Console is Visual Studio Integration at least we will have a single tool for every single MP section. From then we can dream of a way to debug our MPs before deploying them, we can dream of workflow breakpoints in which we can inspect the XML documents passed between modules and so on.
In a following up post I’ll show how to use the console to compose a monitor that runs only on business hours.
This posting is provided "AS IS" with no warranties, and confers no rights.