OpsMgr Self Maintenance Management Pack

OMSelfMaintMPIcon26/10/2015 Update: It has been identified the unsealed override MP was not included in the download, and also there was a small error in “Known Issue” section (section 8) of the MP guide. Therefore I have just updated the download which now included the override MP and updated MP guide. However, if you have already downloaded the version, and only after the override MP, you can download it from HERE.

18/09/2015 Update: A bug has been identified in version, where the newly added Data Warehouse DB staging tables row count performance collection rules is causing issues with the Exchange Correlation service from the of Exchange MP (Please refer to the comment section of this post) because the rule category is set to “None”. I have updated the category of these performance collection rules in both the Self Maintenance MP and the OMS Add-On MP. Please re-download the MP (version if you have already downloaded it and you are using Exchange MP in your environment.


I can’t believe it has been 1 year and 3 month since the OpsMgr Self Maintenance MP was lastly updated. This is partially because over the last year or so, I have been spending a lot of time developing the OpsMgr PowerShell / SMA module OpsMgrExtended and am stilling working on the Automating OpsMgr blog series.  But I think one of the main reasons is that I did not get too many new ideas for the next release. I have decided to start working on version 2.5 of the Self Maintenance MP few weeks ago, when I realised I have collected enough resources for a new release. So, after few weeks of development and testing, I’m pleased to announce the version 2.5 is ready for the general public.

What’s new in version 2.5?

  • Bug Fix: corrected “Collect All Management Server SDK Connection Count Rule” where incorrect value may be collected when there are gateway servers in the management group.
  • Additional Performance Rules for Data Warehouse DB Staging Tables row count.
  • Additional 2-State performance monitors for Data Warehouse DB Staging Tables row count.
  • Additional Monitor: Check if all management servers are on the same patch level
  • Additional discovery to replace the built-in “Discovers the list of patches installed on Agents” discovery for health service. This additional discovery also discovers the patch list for OpsMgr management servers, gateway servers and SCSM servers.
  • Additional Agent Task: Display patch list (patches for management servers, gateway servers, agents and web console servers).
  • Additional Agent Task: Configure Group Health Rollup
  • Updated “OpsMgr 2012 Self Maintenance Detect Manually Closed Monitor Alerts Rule” to include an option to reset any manually closed monitor upon detection.
  • Additional Rule: “OpsMgr 2012 Self Maintenance Audit Agent Tasks Result Event Collection Rule”
  • Additional Management Pack: “OpsMgr Self Maintenance OMS Add-On Management Pack”

To summarise, in my opinion, the 2 biggest features shipped in this release are the workflows built around managing OpsMgr Update Rollup patch level, and the extension to Microsoft Operations Management Suite (OMS) for the management groups that have already been connected to OMS via the new OpsMgr Self Maintenance OMS Add-On MP .

I will now briefly go though each item from the list above. The detailed documentation can be found in the updated MP guide.

Bug Fix: Total SDK Connection Count Perf Rule

In previous version, the PowerShell script used by the “Collect All Management Server SDK Connection Count Rule” had a bug, where the incorrect count could be collected when there are gateway servers in the management group. i.e.


As shown above, when I installed a gateway server in my management group, the counter value has become incorrect and has increased significantly. This issue is now fixed.

Monitoring and Collecting the Data Warehouse DB staging tables row count

Back in the MVP Summit in November last year, my friend and fellow MVP Bob Cornelissen suggested me to monitor the DW DB staging tables row count because he has experienced issues where large amount of data were stuck in the staging tables (http://www.bictt.com/blogs/bictt.php/2014/10/10/case-of-the-fast-growing). Additionally, I have already included the staging tables row count in the Data Warehouse Health Check script which was released few months ago.

In this release, the MP comes with a performance collection rule and a 2-state performance threshold monitor for each of these 5 staging tables:

  • Alert.AlertStage
  • Event.EventStage
  • ManagedEntityStage
  • Perf.PerformanceStage
  • State.StateStage

The performance collection rules collect the row count as performance data and store the data in both operational DB and the Data Warehouse DB:


The 2-State performance threshold monitors will generate critical alerts when the row count over 1000.


Managing OpsMgr Update Rollup Patch Level

Over the last 12 months, I have heard a lot of unpleasant stories caused by inconsistent patch levels between different OpsMgr components. In my opinion, currently we have the following challenges when managing updates for OpsMgr components:

People do not follow the instructions (aka Mr Holman’s blog posts) when applying OpsMgr updates.

Any seasoned OpsMgr folks would know wait for Kevin Holman’s post for the update when a UR is released, and the order for applying the UR is also critical. However, I have seen many times that wrong orders where followed or some steps where skipped during the update process (i.e. SQL update scripts, updating management packs, etc.)

OpsMgr management groups are partially updates due to the (mis)configuration of Windows Update (or other patching solutions such as ConfigMgr).

I have heard situations where a subset of management servers were updated by Windows Update, and the patch level among management servers themselves, as well as between servers and agents are different. Ideally, all management servers should be patched together within a very short time window (together with updating SQL DBs and management packs), and agents should also be updated ASAP. Leaving management servers in different patch levels would cause many undesired issues.

It is hard to identify the patch level for management servers

Although OpsMgr administrators can verify the patch list for the agent by creating a state view for agents and select “Patch List” property, the patch list property for OpsMgr management servers and gateway servers are not populated in OpsMgr. This is because the object discovery of which is responsible for populating this property only checks the patch applied to the MSI of the OpsMgr agent. Additionally, after the update rollup has been installed on OpsMgr servers, it does not show up in the Program and Features in Windows Control Panel. Up to date, the most popular way to check the servers patch level is by checking the version of few DLLs and EXEs. Due to these difficulties, people may not even aware of the inconsistent patch level within the management group because it is not obvious and it’s hard to find out.

In order to address some of these issues, and helping OpsMgr administrators to better manage the patch level and patching process, I have created the following items in this release of the Self Maintenance MP:

State view for Health Service which also displays the patch list:


An agent task targeting Health Service to list OpsMgr components patch level:


Because the “Patch List” property is populated by an object discovery, which only runs infrequently, in order to check the up-to-date information(of the patch list), I have created a task called “Get Current Patch List”, which is targeting the Health Service class. This task will display the patch list for any of the following OpsMgr components installed on the selected health service:

Management Servers | Gateway Servers:


Agents | Web Console (also has agent installed):


Object Discovery: OpsMgr 2012 Self Maintenance Management Server and Agent Patch List Discovery

Natively in OpsMgr, the agent patch list is discovered by an object discovery called “Discovers the list of patches installed on Agents”:


As the name suggests, this discovery discovers the patch list for agents, and nothing else. It does not discover the patch list for OpsMgr management servers, gateway servers, and SCSM management servers (if they are also monitored by OpsMgr using the version of the Microsoft Monitoring Agent that is a part of the Service Manager 2012). On the other hand, this discovery provided by the OpsMgr 2012 Self Maintenance MP (Version is designed to replace the native patch list discovery. Instead of only discovering agent patch list, it also discovers the patch list for OpsMgr management servers, gateway servers, SCSM management servers and SCSM Data Warehouse management servers.

Same as all other workflows in the Self Maintenance MP, this discovery is disabled by default. In order to start using this discovery, please disable the built-in discovery “Discovers the list of patches installed on Agents” BEFORE enabling “OpsMgr 2012 Self Maintenance Management Server and Agent Patch List Discovery”:


Shortly after the built-in discovery has been disabled and the “OpsMgr 2012 Self Maintenance Management Server and Agent Patch List Discovery” has been enabled for the Health Service class, the patch list for the OpsMgr management servers, gateway servers and SCSM management servers (including Data Warehouse management server) will be populated (as shown in the screenshot below):



As shown above, the patch list for different flavors of Health Service is properly populated, with the exception of the Direct Microsoft Monitoring Agent for OpInsights (OMS). This is because at the time of writing this post (September, 2015), Microsoft has yet released any patches to the OMS direct MMA agent. The last Update Rollup for the Direct MMA agent is actually released as an updated agent (MSI) instead of an update (MSP). Therefore, since there is no update to the agent installer MSI, the patch list is not populated.


Please do not leave both discoveries enabled at the same time as it will cause config-churn in your OpsMgr environment.

Monitor: OpsMgr 2012 Self Maintenance All Management Servers Patch List Consistency Consecutive Samples Monitor

This consecutive sample monitor is targeting the “All Management Servers Resource Pool” and it is configured to run every 2 hours (7200 seconds) by default. It executes a PowerShell script which uses WinRM to remotely connect to each management server and checks if all the management servers are on the same UR patch level.

In order to utilise this monitor, WinRM must be enabled and configured to accept connections from other management servers. The quickest way to do so is to run “Winrm QuickConfig” on these servers. The account that is running the script in the monitor must also have OS administrator privilege on all management servers (by default, it is running under the management server’s default action account). If the default action account does not have Windows OS administrator privilege on all management servers, a Run-As profile can be configured for this monitor:


In addition to the optional Run-As profile, if WinRM on management servers are listening to a non-default port, the port number can also be modified via override:



All management servers must be configured to use the same WinRM port. Using different WinRM port is not supported by the script used by the monitor.

If the monitor detected inconsistent patch level among management servers in 3 consecutive samples, a Critical alert will be raised:


The number of consecutive sample can be modified via override (Match Count) parameter.

Agent Task: Configure group Health Rollup

This task has been previously released in the OpsMgr Group Health Rollup Task Management Pack. I originally wrote this task in response to Squared Up’s customers feedback. When I was developing the original MP (for Squared Up), Squared Up has agreed for me to release it to the public free of charge, as well as making this as a part of the new Self Maintenance MP.

Therefore, this agent task is now part of the Self Maintenance MP, kudos Squared Up Smile.

Auditing Agent Tasks Execution Status

In OpsMgr, the task history is stored in the operational DB, which has a relatively short retention period. In this release, I have added a rule called “OpsMgr 2012 Self Maintenance Audit Agent Tasks Result Event Collection Rule”. it is designed to collect the agent task execution result and store it in both operational and Data Warehouse DB as event data. Because the data in the DW database generally has a much longer retention, the task execution results can be audited and reported.


This rule was inspired by this blog post (although the script used in this rule is completely different than the script from this post): http://www.systemcentercentral.com/archiving-scom-console-task-status-history-to-the-data-warehouse/

Resetting Health for Manually Closed Monitor Alerts

Having ability to automatically reset health state for manually closed monitor alerts must be THE most popular suggestion I have received for the Self Maintenance MP. I get this suggestions all the time, from the community, and also from MVPs. Originally, my plan was to write a brand new rule for this purpose. I then realised I already have created a rule to detect any manually closed monitor alerts. So instead of creating something brand new, I have updated the existing rule “OpsMgr 2012 Self Maintenance Detect Manually Closed Monitor Alerts Rule”. In this release, this rule now has an additional overrideable parameter called “ResetUnitMonitors”. This parameter is set to “false” by default. But when it is set to “true” via overrides, the script used by this rule will also reset the health state of the monitor of which generated the alert if the monitor is a unit monitor and its’ current health state is either warning or error:


OpsMgr Self Maintenance OMS Add On MP

OK, we all have to admit, OMS is such a hot topic at the moment. Hopefully you all have played and read about this solution (if not, you can learn more about this product from Mr Pete Zerger’s survival guide for OMS:http://social.technet.microsoft.com/wiki/contents/articles/31909.ms-operations-management-suite-survival-guide.aspx)

With the release of version, the new “OpsMgr Self Maintenance OMS Add-On Management Pack” has been introduced.

This management pack is designed to also send performance and event data generated by the OpsMgr 2012 Self Maintenance MP to the Microsoft Operations Management Suite (OMS) Workspace.

In addition to the existing performance and event data, this management pack also provides 2 event rules that send periodic “heartbeat” events to OMS from configured health service and All Management Servers Resource Pool. These 2 event rules are designed to monitor the basic health of the OpsMgr management group from OMS (Monitor the monitor scenario).


In order to use this management pack, the OpsMgr management must meet the minimum requirements for the OMS / Azure Operational Insights integration, and the connection to OMS must be configured prior to importing this management pack.

Sending Heartbeat Events to OMS

There have been many discussion and custom solutions on how to monitor the monitor? It is critical to be notified when the monitor – OpsMgr management group is “down”. With the recent release of Microsoft Operations Management Suite (OMS) and the ability to connect the on-premise OpsMgr management group to OMS workspace, the “OpsMgr Self Maintenance OMS Add-On Management Pack” provides the ability to send “heartbeat” events to OMS from

  • All Management Servers Resource Pool (AMSRP)
  • Various Health Service
    • Management Servers and Gateway Servers
    • Agents

The idea behind these rules is that once the resource pool and management servers have started sending heartbeat events to OMS every x number of minutes, we will then be able to detect when the expected heartbeat events are missing, thus detecting potential issues within OpsMgr – thus monitoring the monitor.

The heartbeat events can be accessed via the the OMS web portal (as well as using the OMS search API):

i.e. the AMSRP heartbeat events for the last 15 minutes:


Dashboard tile with threshold:



For the heartbeat event rule targeting the health service, I have configured it to continue sending the heartbeat even when the Windows computer has been placed into maintenance mode (not that management servers should ever been placed in maintenance mode in the first place Smile).

I’m not going to take all the credit for this one. Monitoring the monitor using OMS was an idea from my friend and fellow MVP Cameron Fuller. as the result of this discussion with Cameron and other CDM MVPs, I ended up developed a management pack which sends heartbeat events from AMSRP and selected health service (management servers for example) to OMS. This management pack has never been published to the public, but I believe Cameron has recently demonstrated it in the Minnesota System Center User Group meeting (http://blogs.catapultsystems.com/cfuller/archive/2015/08/14/summary-from-the-mnscug-august-2015-meeting/)

Please refer to the MP guide section 7.1 for detailed information about this feature.

Collecting Data Generated by the OpsMgr 2012 Self Maintenance MP

Other than the heartbeat event collection rules, the OMS Add-On MP also collects the following event and performance data to OMS:

  • Data Warehouse Database Aggregation Outstanding dataset count (Perf Data)
  • Data Warehouse Database Staging Tables Row Count (Perf Data)
  • All Management Server SDK Connection Count (Perf Data)
  • OpsMgr Self Maintenance Health Service OMS Heartbeat Event Rule
  • Agent Tasks Result Audit (Event Data)

The above listed data are already being generated by the OpsMgr 2012 Self Maintenance MP, The OMS Add-On MP fully utilise Cook Down feature, and store these data in OMS in additional to the OpsMgr databases.

i.e. Agent Task Results Audit Event:


SDK Connection Count Perf Data:


Please refer to the MP guide section 7.2 for more information (and sample search queries) about these OMS data collection rules.


There are simply too many people to thank. I have mentioned few names in this post, but if I attempt to mention everyone who’s given me feedback, advise and helped me testing, I’m sure I’ll miss someone.

So I’d like to thank the broader OpsMgr community for adopting this MP and for all the feedback and suggestions I’ve received.

What’s Next?

Well, my another short time goal is to create a Squared Up dashboard for this MP, and release it in Squared Up’s upcoming community dashboard site.

Speaking about the long time goal, my prediction is that the next release is probably going to be dedicated to OpsMgr 2016. I am planning to make a brand new MP for OpsMgr 2016 (instead of upgrading this build), so I am able to delete all the obsolete elements in the 2016 build. I will re-evaluate and test all the workflows in this MP, making sure it is still relevant for OpsMgr 2016.


You can download this MP from my company’s website HERE


  1. Hello,
    For information, your form to download doesn’t work. I test 3 times and no mail received. Also, the company is not required but when you don’t fill this part, it says that it is required.. Can you help ? Thanks

        1. np. I’ve just tested again, and it works. Could that be your email system is filtering out the response from wordpress[AT]tyconsulting.com.au?

          1. I hope not because I never had this problem before. Anyway, if it works for other persons, it’s more essential.

  2. Hi Tao, execellt work again! get an error everytime i try create an override – “The Alisa attribute is invalid – The vale 2012 is invalid according to its datatype “managementpackUnqueIdentifier@ – Name Cannot being with the 2 characters, hex value 0x32 – any thoughts?

    1. Please refer to the known issue section in the MP guide. There’s a workaround. I won’t be able to fix it now, but definitely something I’ll fix for the OpsMgr 2016 version in the future.

  3. Since some people are having issues with the email response, I have re-configured the system to display the download link instead of emailing it after the form has been filled. Please let me know if anyone is still experiencing issues.


  4. Hello,

    We have a issue with this MP that could impact a lot of scom users. When you enable rules where the category is “none” (like the rules concerning the datawarehouse dw staging performance rules), the correlation engine from exchange 2010 is beginning to generate a lot of critical events and critical alrts (like described in the following article : https://social.technet.microsoft.com/Forums/en-US/f724545d-90a3-42e6-950e-72e14ac0bd9d/exchange-correlation-service-cannot-connect-to-rms?forum=operationsmanagermgmtpacks)

    1. Hi Regis,
      Thanks for letting me know this issue. I’ve never seen it because I don’t have Exchange MP running in my lab. I’ve just updated all these rules in both the self maint as well as the OMS add-on MP. Are you willing to test it for me before I publish the updated version? Please email me if you are willing to test, I’ll reply with the updated version.

      Thanks again,

  5. Hi Tao,
    I hoped for a fix on the “OpsMgr 2012 Self Maintenance Management Packs Backup Rule” rule. As discussed a while ago by mail, it is targeted on the all Mgmt pool whilst i wanted to run this rule on a particular management server only. Therefore we are running the 2007 version as advised by you.
    Any idea if this will be changed? 🙂

    1. Hi Tommy,

      Yes, I remember our conversation and I have considered adding a Run-As profile to perform the MP copying in this rule. After examining the script used by the backup rule, I realised it would not be a easy update because the script directly writes to the destination folder (without copy). So if I need to leverage another account which does not have SCOM admin access but has write access to the backup destination folder, I would have to update the script significantly. I then decided just to leave the rule as it is, I don’t think it is too much a big deal to just grand all the management servers computer account write access to a folder (and you can place all your management servers in an AD group).

      Having said that, there is nothing wrong with using the OM07 version of the rule, it’s just the OM07 version targets a single server (RMS Emulator) instead of AMSRP.


      1. Hi Tao,
        Thank you for your reply. Can i run the 2012 version simultaneously with the 2007 version (using the latter only for the backup)?
        Tommy van Extel

        1. Sure, definitely, they are completely separate rules. I’d only suggest you configure them to run at different time and write to different destination folders so they don’t interfere with each other.

  6. Hi Tao,
    I am encountering an issue with the “OpsMgr 2012 Self Maintenance Detect Manually Closed Monitor Alerts Rule” rule. I’ve configured it as followed:
    TimeOutSeconds 3600
    SyncTime 12:05
    Enabled True
    ResetUnitMonitors True
    If i’m right it should have run at 12:05, but it has been almost 1 and a half our since but no alert has been raised. Could it be the script timed out due to the amount of manually closed monitor alerts?

    1. any timed out script executions will trigger a warning alert in SCOM, can you see any? For each detected manually closed monitor, the scrip will log an event in Operations Manager event log if debug is enabled (please refer to the MP guide for the Event ID). can you see any events logged by the script?

      1. Hi Tao,
        Please correct me if i’m wrong but i don’t see any debug or event codes settings in the manual (neither in the overrides).

        1. sorry, my bad, there’s no debug parameter, I got mixed up with another workflow. but this rule logs an event with event ID 9724 with every manually closed monitor alert. can you see them (check all the management servers as it is targeting a resource pool).

          1. OK, i found the events.
            It ran from 12:05 as configured and it ended on 12:28, so that is within the 1 hour timeout. I cannot find any alert on failure (timeout) of the powershell script.

  7. Tommy,
    I just tested again in my lab, I set the interval minute to 5 and manually closed 7 monitor generated alerts. within 5 minutes, I got a warning alert generated:

    Over the last 5 minutes, 7 monitor generated alert(s) have been closed manually by 7 users:
    CORP\admin.ty: 7 alert(s)

    and all the instances have been reset. Can you see any warning alert with name “Monitor Generated Alerts Have been Manually Closed”?

    1. Hi Tao,
      We tested with 15 minute interval and indeed got a alert. We will test again but the mechanism seems to work.

  8. Hi Tao,

    Sorry think it is me being stupid, have followed your section in the guide about if you are using a custom management pack to put your overrides in but I still get the same “Alias attribute invalid error” or when I go to import the management pack back in it fails saying can’t find the “views folder”.



  9. Hi Tao,
    I am running into a convert parameter issue:

    Module was unable to convert parameter to a double value

    Original parameter: ‘$Data/Property[@Name=’State’]$’

    Parameter after $Data replacement: ”

    Error: 0x80020005

    Details: Type mismatch.

    One or more workflows were affected by this.

    Workflow name: OpsMgr.2012.Self.Maintenance.DW.DB.State.Staging.Table.Row.Count.Perf.Collection.Rule

    I assume that this is why the DW Staging Tables Count Performance View is not populating What do I need to do to correct this?


    1. Module was unable to convert parameter to a double value Original parameter: ‘$Data/Property[@Name=’Alert’]$’ Parameter after $Data replacement: ” Error: 0x80020005 Details: Type mismatch. One or more workflows were affected by this. Workflow name: OpsMgr.2012.Self.Maintenance.DW.DB.Alert.Staging.Table.Row.Count.Perf.Collection.Rule Instance name: All Management Servers Resource Pool Instance ID: {4932D8F0-C8E2-2F4B-288E-3ED98A340B9F}

      All of the collections are doing this.

  10. This is just excellent work,Tao!
    I’m trying out the “obsolete aliases detection rule” and it generates alerts on SCinternal(Microsoft.Systemcenter.internal)
    shouldn’t this be whitelisted by default?

  11. “OpsMgr 2012 Self Maintenance Balance Agents Within Resource Pool Rule” – I have enable this rule to balance the agents between two MS servers in one resource pool “Agent Managed Resource Pool”. I have configure the rule to run every 24 hours and synctime=2:55. When i check the result of this balance rule nothing have change, still one MS server have 198 agents and the other have 187 agents. How can I garanti that this rule is working and why is the agents not balance with 50% between the MS servers?

  12. “OpsMgr 2012 Self Maintenance Configure Agents Failover within Resource Pool Rule” – I have enable this rule to use the failover solution at the agents between two MS servers in one resource pool “Agent Managed Resource Pool”. When I check the configuration for the agents primary and failover MS servers with the script Get-FailoverManagementServer.ps1 from Stefan Roth. I still get all MS servers as failover and the 1st failover server is not always the 1st failover server that I want. How can I check that the primary and the failover server is configure correct through this rule?

  13. Tao,

    My perf DB staging tables row count is more than 1000, between 2000 and 3000. It is arising an alert in my console, because the default value is 1000. What the value is considered an issue? I have 1000 windows and 100 linux agents. Is it an issue when it is always growing?

  14. Hi Tao,
    can you send me the Management Pack or a downloadlink?
    I tryed the form for four times now… no message, no link…

    Thank you,


  15. Tao, not sure what I am doing wrong. All the data warehouse perf collections in the self maintenance mp are doing this.

    Module was unable to convert parameter to a double value Original parameter: ‘$Data/Property[@Name=’Alert’]$’ Parameter after $Data replacement: ” Error: 0x80020005 Details: Type mismatch. One or more workflows were affected by this. Workflow name: OpsMgr.2012.Self.Maintenance.DW.DB.Alert.Staging.Table.Row.Count.Perf.Collection.Rule Instance name: All Management Servers Resource Pool Instance ID: {4932D8F0-C8E2-2F4B-288E-3ED98A340B9F}

  16. Tao – I am having an issue, when I create an override on the ‘backup management packs’ rule when I select to backup management packs my location that I specified in the overrides doesnt show. I then have to type it in each time. Perhaps there is something im missing

  17. Hi Tao,
    we use your OpsMgr Self Maintenance MP and are quite happy with it.
    However we get an alert for one of our MPs referencing Microsoft.SQLServer.Visualization.Library and Microsoft.SystemCenter.Visualization.Library respectively. Both MPs are not referenced by there alias but only by there full name like .
    Obviously when I delete the references in the References-Paragraph and try to import the MP I get errors regarding missing references.
    Can you please an explanation for that behaviour?

  18. It seems as my example “full name like …” disappeared ……….
    Again the example how the references are written in the MP: “”

  19. don’t know what happens – ComplexValue Type=”xsd://Microsoft.SystemCenter.Visualization.Library!Microsoft.SystemCenter.Visualization.DataProvider/MPInstanceWithRecursionLevel”

  20. Hi!
    I found issue in OpsMgr.2012.Self.Maintenance.Audit.Agent.Tasks.Result.Event.Collection.Rule
    Data item returned no information for parameter ‘$Data/Property[@Name=’Status’]$’
    This usually indicates that the query is incorrect.

    Name “Status” is different from PS script:
    $oBag.AddValue(“TaskStatus”, $TaskStatus)

    Please, send me a corrected MP version

  21. Hi Tao,
    Is there a way to get a report of the closed monitors? Because now and then users say ‘i didn’t close anything’ and it costs me a lot of time to dig into the closed alerts.
    “OpsMgr 2012 Self Maintenance Detect Manually Closed Monitor Alerts Rule”

    1. Hi Tommy,

      I would create a rule to send this as an event to OMS, then users can simply search these events in OMS. it’s much easier than developing the traditional SCOM SSRS reports 🙂


  22. Hi Tao,
    do you already have an idea how to avoid ‘Obsolete Aliases found’ Alerts for Management Packs referenced by there full name? Any hint would be appreciated.

  23. We have just installed and there does not appear to be the rule entitled “OpsMgr 2012 Self Maintenance Balance Agents Within Resource Pool Rule”

    We had previously and it was there. Is it missing from the new build ??

  24. Thank you for this excellent Management Pack. I use several of the features already and am currently trying to implement the Local Management Server in Maintenance Mode Monitor. It correctly created the list of Managemetn Servers under Discovered Inventory. The issue I’m seeing is that when I place a Management Server in maintenance mode, it will only change to a “Not Monitored” state. Its state will not degrade so I’m not getting an alert for it. I’ve checked and rechecked everything and it all appears to be configured correctly. Any ideas what to check/do next?

  25. Tao,

    I love the ability to reset the health state of manually closed monitor alerts but how do I determine which ones were manually closed?

  26. Hi Tao,

    thanks for this useful MP and sorry for my bad english.

    I tried to set the backup intervall to 7 days (604800) seconds, what results in an error from HealthServiceModules saying Error 0x80070057 (unexcpected data).
    If i set this value lower (86400, like the default) it works.

    Is there any limitations on this value other than beeing an integer?

    Thanks in advance!

    Greetings from Germany!

  27. Hi! I have one customer where I get the event error 9708 on the “…Configure Agents Failover…) rule. The message says that “… Resource pool with the name XXX not found. I get this on any Resource Pool. This SCOM environment have for a while ago been upgraded from SCOM2012 SP1 to SCOM2012R2. I have other customer with SCOM2012R2 that don’t have this problem. Can it be some command in the script that don’t work?


  28. Tao,

    I must say that your MP is a life saver. The unfortunate thing for me is I am in the process of bringing up my SCOM 2016 environment and I just noticed that you are working on a MP for this version. My question to you is, when will you be done with this, because I its functionality is going to be missed in my new environemnt?


  29. Hi, Thanks a lot for developing this MP which helped us a lot.. As we are in process to upgrade SCOM version with 2016, Could you please confirm when new version for 2016 will be launched? If not recently, this MP support SCOM 2016?


  30. Hi, there’s a error in the roll up task:
    If ($GroupCalss.DisplayName -eq $null)
    $GroupDisplayName = $GroupClass.DisplayName
    } else {
    $GroupDisplayName = $GroupName

    You need to change If ($GroupCalss.DisplayName -eq $null) to If ($GroupClass.DisplayName -eq $null)

    It should be Class and not Calss

  31. Looks like this MP is not compatible with SCOM 2019. – Would really appreciate it being updated!

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: