.\Matthew Long

{An unsorted collection of thoughts}

Preview – New Official System Center Operations Manager MP authoring tools

Posted by Matthew on April 30, 2012

Disclaimer: This article is based on a preview of pre-release software.  Features and information may change between the time this article was written and time of release.

At MMS this year Microsoft revealed their two new Management Pack authoring tools which will upon release replace the venerable Scom authoring console as the MS official management pack authoring tool. It’s immediately worth noting that the Authoring Console will still be available and supported, but it will not be receiving any updates and therefore will not be able to understand the new Scom MP schema.

Previously the authoring console serviced a middle ground area in terms of user MP authoring skill. Those who were brand new to MP development often found the tool confusing, and the required knowledge level too steep. This was particularly common with ITPros who were looking to create a simple MP to monitor a “standard” windows application.

However, the authoring console was also missing several capabilities that are required for complex management pack authoring scenarios. In his MMS session Baelson Duque talked about how Scom’s own management pack to monitor itself is around 37,000 lines long, and authored by multiple people. As a management pack is a single file this made development of the MP very difficult and he admitted that many of the bugs in the management pack were introduced due to merge issues and copy-paste errors when duplicating module composition.

So to quote Brian Wren “rather than having one tool to rule them all” Microsoft have decided to instead develop two different tools to address both ends of the MP authoring skills spectrum. For ITPros who are looking to create simple/common management packs, we now have the Visio Management Pack Extension. For Developers who need the power of a full development environment we have the Visual Studio 2010 Management Pack Extension.

I’m going to put up full writeups on both tools, and documentation is already available on the Technet Wikis, but for now I’m going to briefly discuss both tools and their capabilities. It’s worth noting that both of these tools are V1 and as such there are a couple of limitations with both products that Microsoft are looking to address in future updates.

Visio Management Pack Authoring Extension

  • Requirements: Visio 2010 Premium
  • Intended audience: ITPros with basic to no knowledge of management pack XML
  • Expected Release: CTP to be released within the next few weeks, with RTM to follow within a couple of months.
  • Generated Schema: Scom 2007 schema version

Features

  • Drag and drop interface
  • All classes, monitors, rules, and the relationships between objects are created by dragging stencils onto the Visio drawing and connecting them together. Templates are included for quickly standing up common app scenarios (such as a service with a reg discovery, event collection etc)
  • Smart configuration of shape data only asks for relevant params
  • Shapes have intelligent configuration fields that the author fills out using simple terms, with many more complicated settings inferred from those simple choices. Fields are hidden until their value is relevant.
  • No knowledge of discoveries required, other than discovery condition
  • The inclusion of a class shape automatically sets up a discovery under the hood, with common non-script based discoveries used. The author is simply asked to provide the discovery condition (such as a reg key path)
  • Automatically creates views
  • When classes, monitors and rules are included on the diagram, a view is automatically created for the object. By specifying the same view path as a piece of configuration data objects will be included in the same view automatically (for example, perf counters visible in the same view)
  • Creates monitors and rules with cook down automatically
  • All monitoring objects created are forced to use MS best practises including full use of cook down.
  • XML element IDs are generated automatically in a consistent, human readable notation
  • All automatically generated object IDs are set to a sensible human readable value, rather than the GUID that the Scom console uses when creating content.

Visual Studio 2010 MP Extension

  • Requirements: Visual Studio 2010 professional (higher editions and versions supported)
  • Intended Audience: Developers/ ITPros with strong MP authoring skills.
  • Expected Release: RTM within the next few weeks.
  • Generated Schema: Scom 2007 schema version by default, with Scom 2012 and Service manager projects also available.

Features

  • Management Pack Browser
    • The extension includes a graphical way of representing and browsing the contents of your MP in the management pack browser. This view is similar to the object lists you’d see in the Authoring console, and allows you to jump straight to the element definition and perform further operations.
  • Snippets and template groups
    • Template groups allow the creation of Discoveries, Rules, Monitors and many other elements using property windows, object pickers, and model dialogs.  No more XML knowledge required than the 2007 Authoring console.
    • In order to assist in the creation and completion of repetitive objects, we can now use code snippets to effectively single instance an object definition. Fields are inserted into the XML definition which are then filled out in a tabular format by the author using the snippet, and at build time Visual Studio will create all the listed elements using that snippet, inserting the field values from each item row into the MP XML.  You can even import from a CSV File.
  • Fragments
    • A series of new file types have been included in the VS extension, including MP fragment files. These essentially allow for partial definitions of Management pack XML with out-of-order elements. This allows for multiple authors to easily work on the same MP, and means that elements such as display names and knowledge can be included next to their object, rather than somewhere else in the file!
  • Intellisense
    • Visual studio continues to provide autocompletion during typing by reading the MPschema and resolving references within your management pack.
  • Skeleton samples
    • The extension includes skeletons for common MP elements, to save you having to type (and remember!) the same static code over find over.
  • Scripts as resource files
    • Rather than placing scripts directly into XML, you can now attach PS1 files and VBS scripts to a project and have them injected into script data sources! This makes testing and script update/modification much, much easier.
  • Solution and Build Options
    • Include multiple MPs in a single solution
    • You can now provide your solution with a key file, in which case all MPs in the solution will build as signed MPs.
    • If your end solution is multiple management packs (typically a library, discovery and monitoring MPs), you can include these all within a single solution and set MP dependencies. The solution will then be built in the correct order so that you don’t need to keep manually resealing your library MPs.
    • During project or solution builds not only is the XML verified to ensure it is syntactically correct but also applies (some) MP best practise rules to the project and surfaces the results along with the XML verification.
    • At build you can import them into a management group and even launch the SCOM console/Web Console!

Ok, that should be enough to wet your whistle. Look out for a write up for each tool coming shortly!

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s