Archive | May, 2013

Extending HP network devices with CPU and Memory counters

25 May


This blog I had prepared a long time ago but never published it. So now it’s the time to do it.  Since we all know that SCOM 2012 has build in network device monitoring we of course want to use it. This works perfectly , except I you are using devices that are not certified by SCOM. In that case you will not get the CPU and memory counter and Fan/PSU states. For example most of the Procurve network devices from HP are left in the dark. So..

The problem

We want to monitor also CPU and Memory usages from HP network devices.

The solution

I will keep it simple and clear. I will demonstrate the steps using VSAE and give you as bonus the MP at the end. I will use VSAE management pack templates just to illustrate the power of it.

The steps will be:

1. [Classes] create the memory and CPU classes

We just simple make use of on the memory and processor classes that are already present in the system center network library. So we create 2 classes based on that:



2. [Datasources] create the memory and CPU discovery datasources

Now we have to create the datasources for the discovery of the CPU and memory targets


The most important is that you set the device key correctly to the parent node. Otherwise the relationship between the new CPU / memory class and the network device node will not be set. And you will not see any CPU / Memory targets. This can sometime be a ‘error and retry’ process.

3. [Discovery’s] create discovery’s for the CPU and Memory targets

Now we have the discovery datasource we can create the 2 discovery rules for the CPU and Memory targets. We will use the VSAE discovery templates for this. Just simple add new ‘Discovery’ template and you add the 2 rules below.


Create the 2 new discovery’s and specify the correct datasources.


You specify the datasources we created above to the correct discovery rule. Fill in the correct OID to match the HP processor and Memory OIDs.


If you now import the MP will will see at a HP node the CPU and Memory classes created. So continue the the next step.

4) [Rules] create the memory and CPU collection rules

So now we can make the stuff we wanted to see. The Memory and CPU counters. So we just simple use the add new item ‘Rule (Performance Collection)’ template and make the 2 new rules. We are going to use the already build in performance collection rules for the network nodes.



The most important is to specify the correct OID for the Memory and CPU counters at the datasource configuration. See below:

CPU: .
Memory: . and .

I am not going to do a deep dive on this. You can just simple reference to the downloadable project source at the end of this post to check the details out.

The results

Now you import the MP and you will see you most wanted performance counters !! Open the Network Summary Dashboards and Node dashboard for the CPU Usage to check it out.


And the ‘free Memory (Percent)’ performance view for the memory usage.


And below the relation ship diagram.


The End

The next step could be to add monitors to alert on high Memory or CU usages. I am not going to give you this bonus because its better to get some VSAE practice you self’s… You can do this the same way you did with the collection rules. There is a template for monitors also.

Download VSAE project (for the diehards):

Download Management Pack example:

Happy Scomming

Michel Kamp

How To fix the 500 Error using Favorite Reports in the SCOM web console.

22 May

First mention this is a non official solution.

The Problem

You have installed SCOM 2012 Sp1 UR2 and have implemented the scom webconsole and reporting service to be running under HTTPS mode. You have created using the native scom console a favorite report and now when you try to open this favorite report in the scom webconsole you get a error 500.




To see the real error we have to do some web.config changes. So open the web.config file on this location: C:\Program Files\System Center 2012\Operations Manager\WebConsole\MonitoringView

Now we enable the SCOM error logging


And to get it displayed on the user page we do


Now when you run the favorite report again we get in the webconsole  the real error


Okay looks like the reportviewer web component binary dll can’t be found. Hmm but wait wasn’t this a prereq at installation time. So I checked if the 2010 ReportViewer components where installed and yes it was and the dlls where also spotted in the assembly cache. It looks like the webconsole has problems finding the correct version of the Microsoft.ReportViewer.WebForms.dll in the assembly cache.

The Quick non Official Solution

Copy the missing dlls to the correct directory will force the web runtime to first look in this directory for the dlls and then go to the assembly cache. So that’s what i did.

Copy the Microsoft.ReportViewer.WebForms.dll file from the assembly cache to path : C:\Program Files\System Center 2012\Operations Manager\WebConsole\MonitoringView\bin

Come on give me some script to do that ! Okay open PowerShell as admin and run

Copy-Item c:\Windows\assembly\GAC_MSIL\Microsoft.ReportViewer.WebForms\*\*.dll “C:\Program Files\System Center 2012\Operations Manager\WebConsole\MonitoringView\bin”

And now you try to run the favorite report again in the webconsole …


… and Yes its working!

The End.

For me this looks  like a bug and I will address this to Microsoft.

Happy Scomming!

Michel Kamp

SCOM Console Hidden Feature ??

21 May

A really short post. A member of a NOC operations team reported a problem with his SCOM console.

The Problem.

Using the operations native console and opening a windows computer state view resulted in gray computer targets.



Normally when for example the computer targets are gray you know it’s a gent connectivity problem or the MS health service is stalled / crashed.  But this time non of this was true. Looking at the agents and MS states its was all green and okay.

The solution

First the root cause was assumed to be the computer of the NOC operator. Yes I have rebooted it twice and I have installed all the patches was the first response Knipogende emoticon  . But however I am running Windows 8. Okay .. could this be the case ?… After a while of figuring out what could be the problem we detected that on other NOC computers the problem was also reproduced. And yes now we had found the problem .. And what do you think ? If you have a target state view (for example the windows computer view) and you personalize this view and remove the State column you will facing the problem above. So we added the State Column again and the problem was fixed.


The End

Of course you can ask you’re self why remove the state column it’s a very important one. Lets say the most important one in a state view…. I have ask it my self’s but I think it was a human error by mistake and not noticed earlier… But the question remains this still looks like a bug in the SCOM console.. What do you think ?

Happy Scomming

Orchestrator and PowerShell Actions returned from a marriage therapy session…

11 May


Yes I know I blog a lot on SCOM related posts but this don’t imply that I don’t use the other system center products. As you know or not know that I work for a company that hosts SCOM as private clouds. So I use also a lot of Orchestrator runbooks to automate the boring and complex hand work and to glue all the components together.

The problem

As one of my best practice rules I try to use only the out of the box delivered actions (IPs). Some times I can’t find the correct action and have to use PowerShell to get it working. So I use the Run Dot Net Script PowerShell action. And now the bad marriage starts. You all know when you try to type the PowerShell code into the action window you get very strange line breaks and you completely miss the code IntelliSense and error/debug features that you will have in power shells ISE or other PowerShell editors. So what do you do ?

(1) Open the PowerShell editor lets say ISE and program your script.

(2) After testing you SAVE IT TO YOUR SOURCE SAFE solution. for example TFS

(3) Now you copy and paste your PowerShell code from the ISE editor to the orchestrator PowerShell action.

(4) you replace the the input parameters with the correct orchestrator subscriptions.

(5) you check-in the runbook.

So far so good… but .. Now you have detected a bug in your PowerShell action (and I think I am not the only one that has bugs in his work) . You will have to do the reverse actions and repeat the steps in forward order again. Pffff very time consuming…

The solution

After some thinking I came with a solution. I have made a PowerShell ISE plugin that does the following.

(1) connects to the Orchestrator database . You must supply the connection settings in the Config tab first.

(2) You Press on LOAD and it shows you a list of PowerShell actions you have in your workbook(s)

(3) You select the correct PS action by double click on it.

(4) the PowerShell code from that action will be opened in the ISE editor.

(5) the subscription parameters are collected also and a extra PowerShell code is created for you to fill in the parameters with values for off site testing. *Planned for next release.

(6) you bug fix and test the script.

(7) you press in the ISE orchestrator plugin on Save and the script will be saved to the orchestrator workbook action. (be sure that it is checked out , save will work but’s better to do so)

Now you will have the workbook action with the fixed script. You even don’t have to worry about the parameter subscriptions because the are all there… Press refresh in the Orchestrator designer and look at the properties again to check it out.


Cool isn’t it !!

And that’s why I also share it with the community !

See download link below:!1391&authkey=!AGXGNQLdATUuMDg

1) unzip the file and read the readme.txt file for setup instructions.

2) go to the config tab and specify the correct SQL and DB. Remember its using integrated security.

Next release is coming soon. This version will also have a feature that replaces all the Orchestrator parameter subscriptions with real values from a runbook run history. So you can debug with real parameter values. I had some troubles making it stable so its coming later on…

Happy SCOMMING … Orchestrating.  

Michel Kamp