How to resize your Health Icon in Visio with OpsMgr Dashboards

Technorati Tags: ,,

The last couple of days I helped a customer with creating some Service Monitors in Operations Manager 2012 including dashboards. The dashboards were created with the Visio Extensions for System Center 2012 which can be found here. In these dashboards I wanted to resize health icon of the Distributed Application.


Normally you can resize a Visio shape easy by using your mouse, but this specific object isn’t a normal Visio shape but a shape from an icon set which can be found under Data Graphics. If you want to know more about creating your own Data Graphics in Visio check this URL.


After some digging in Visio I found out how to resize a shape from an icon set.

  • Enable developer mode in Visio Options
  • In the ribbon an extra menu “Developer” is shown.
  • Select the OpsMgr health icon and click “Show ShapeSheet” which can be found under “Developer” menu.
  • Choose for the option “Shape”.
  • A new window will be displayed. At the top of this window you will see “Shape Transform” with the options: Width and Height
  • Changing the value from “=GUARD(0.25 in*DropOnPageScale)” to “=GUARD(0.5 in*DropOnPageScale)” will double the size of the shape from the icon set.
  • Job done

Hope this helps to optimize your dashboards with the Visio extensions of System Center 2012.

Installing SCCM 2012 Prerequisites

Recently I had to install several SCCM 2012 servers with different Site Server Roles. So I thought it would be a good idea to do this unattended with the help of a batch file. I created the following table that might be handy to sort out all the different prerequisites command lines.

Because it was kind of difficult to edit the table in the post editor I created a picture of the table and included an extra table with the specific command lines so you can copy it for your own purpose.

PreReq Command Line
NET Framework 3.51 Core ServerManagerCmd.exe   -install NET-Framework-Core
NET Framework 3.51 Full ServerManagerCmd.exe   -install NET-Framework
Default IIS configuration ServerManagerCmd.exe   -install Web-WebServer
Remote Diff Compression ServerManagerCmd.exe   -install RDC
ISAPI Extensions ServerManagerCmd.exe   -install Web-ISAPI-Ext
Windows Authentication ServerManagerCmd.exe   -install Web-Windows-Auth
IIS 6 Metabase Compat ServerManagerCmd.exe   -install Web-Metabase
IIS 6 WMI Compat ServerManagerCmd.exe   -install Web-WMI
IIS 6 Mgmt Compat ServerManagerCmd.exe   -install Web-Mgmt-Compat
ASP.NET ServerManagerCmd.exe -install Web-Asp-Net
Dynamic Content Comp ServerManagerCmd.exe -install Web-Dyn-Compression
Static Content Comp ServerManagerCmd.exe   -install Web-Static-Content
Default Document ServerManagerCmd.exe   -install Web-Default-Doc
BITS ServerManagerCmd.exe   -install BITS
WDS ServerManagerCmd.exe   -install WDS
BranchCache ServerManagerCmd.exe   -install FS-BranchCache
Network Policy Server ServerManagerCmd.exe   -install NPAS-Policy-Server
NET Framework 4.0 dotNetFx40_Client_x86_x64.exe   /q /norestart
WSUS 3.0 SP2
WSUS 3.0 Update

Hope this helps with your own SCCM implementations.
Best regards,

SCCM 2012 Software Update Synchronization Fails with Unknown SQL Errors

Yesterday I started to configure the Site Server role Software Update Point in SCCM 2012 at a large Dutch Accounting company. We have installed a Central Administration Site with a dedicated SQL 2008 R2 server and a Primary Site also with a dedicated SQL 2008 R2 server. Both SQL environments were installed by the company DBA team.  After configurering the Software Update Point role I started a manual synchronization of the Classifications and Products I selected. I opened the WSUS synchronization log file wsyncmgr.log to see how synchronization occured. When synchronization started I noticed some strange error messages saying:

*** *** Unknown SQL Error!
Failed to sync update 9703dec9-deaf-4566-b966-aeca447a4ba4. Error: Failed to save update a9d8e639-6d3e-4d7c-9ded-0a15c078cc8b. CCISource error: -1. Source: Microsoft.SystemsManagementServer.SoftwareUpdatesManagement.UpdatesManager.UpdatesManagerClass.DefineUpdate

After some seaching on the Internet (thanks to Carl Tsigakis from Microsoft) I found a similar issue at this blog and another one

Then I checked my database settings because the DBA team moved also my SCCM databases to separate locations for the MDF and LDF files for performance reasons. Indeed my database settings where different than they should be. I dubble checked it with my own lab environment. So here is what I checked and changed:

1. Check the database ownership in SQL Management Studio using the query:

  • Exec sp_helpdb
2. Changed the database ownership back to ‘sa’ using the query:

  • USE [SCCM_Db] GO EXEC sp_changedbowner ‘sa’
3. Check the TRUSTWORTHY property on the SCCM database.

  • Right click on SCCM database
  • Select options and look for trustworthy property in the list of DB options
4. Change the TRUSTWORTHY property on the SCCM database using the SQL query:


After changing back the database ownership to ‘sa’ and set the TRUSTWORTHY property to ON, I was able to synchronize successfully. Because I had the exact same databases settings for my Primary Site I changed them also.

Yet another lesson learned “Watch carefully to the database ownership and trustworthy property when you move SCCM databases after the installation!!!

Hope this helps for you.
Best regards

Author your MP with Snippet templates in Visual Studio

On the last day of MMS 2012, I attended the AM-B311 session “Management Pack Authoring Tools: The Next Generation”. With the new release of System Center Operations Manager 2012 there will also be two new Authoring Tools soon be available. These new Authoring tools are:

  1. Visio Management Pack Designer
  2. Visual Studio Authoring Extensions

More information about all Authoring Tools for Operations Manager 2012 can be found here.

In this blog I’ll describe how you can create your own “snippet” templates in Visual Studio 2010 to simplify the creation of a more advanced Management Pack. These “snippet” templates help you to create a basic Management Pack with the creation of for instance multiple classes, discoveries, groups, monitors and views. When the basic Management Pack is built in Visual Studio you only have to change the specific values in the XML code.

First you need to install Visual Studio 2010 Professional or higher and secondly you need to install the System Center 2012 Visual Studio Authoring Extensions.

Now when you start Visual Studio and select “New Project” a new window will open and you will be able to choose from the “Installed templates”. Select the “Operations Manager Core Monitoring Management Pack” template under “Management Pack – Operations Manager”. This one will generate an empty MP that you can use for Operations Manager 2007 R2 as well as 2012.

Next I create a Folder “Templates” in the “Solution Explorer” to save my Snippet Templates.

After that I add a “New Item” also in the “Solution Explorer” and now I can choose from many different SCOM items. Default the System Center 2012 Visual Studio Authoring Extensions has one “Snippet Template” to quickly create multiple rules. This one can be found under “Code” and is called “Snippet Template”. To become familiar with a “Snippet Template” open this one.

  1. #text; this is for text input
  2. #choise; this is for choosing from predefined values
  3. #alias; this is for automatically setting the correct alias name of a reference MP

Now when you delete all XML code in this templatesnippet code file with you own XML code and use your own input fields you are ready to go with your own templatesnippet. For instance I created my own templatesnippet for creating some classes.

The following step is save the snippettemplate code and add a new Snippet template under “Templates”. Give the Snippet template a name and click the button “Add”.

Now select the correct Snippet type. In my case the templatesnippet I just created.

You will notice in the Visual Studio Solution Explorer two files have been created. The first file (mpsd) is going to be used for the input of your fields. The second file (mptg.mpx) is currently an empty XML file that is gone be automatically generated based on the input fields in the first file.

When you fill in the input fields of the first file and save the file, you will notice that the second file has automatically generated the XML code for the classes.

Because I prefer to build each custom Management Pack basically the same, I made myself some extra templatesnippets for discoveries (registry and WMI), instance groups, monitors and views (alerts, performance and state) that help me quickly build a basic XML MP. You can download these templatesnippets for your own purpose at the bottom of this blog.

When you’re finished authoring your Management Pack just choose to build the project and watch for any errors in the error list. If no errors are found than your XML Management Pack is created under the project folder in the subfolders \bin\debug. You can now import the custom Management Pack in Operations Manager 2007 or 2012.

One final comment: be sure to use the exact same id’s (lowercase, uppercase). If they are not the same in your project, than errors will appear in the errorlist!

Happy authoring!