2018.03.23: (This is a reboot of a previous post. I revised the title, script, and photos a bit.)
I was working on a support case recently when it was brought to my attention that this cmdlet, Export-SCOMEffectiveMonitoringConfiguration, does not output ALL contained instance configurations even when the “-RecurseContainedObjects” parameter is used. Yes, really! It outputs configuration data for only one instance of each particular type, be it a logical disk or Ethernet adapter etc., you only get monitor and rule configuration output for one of a kind in the resulting .csv file. If you have three logical disks (i.e. C:, D:, E:) you will only see configuration data for one of those, whichever one gets enumerated first by the cmdlet.
To overcome this limitation I’ve written a script that targets a group, and “recurses” all contained objects, outputs each configuration set to a separate file, then merges all of the files together to create one complete .CSV. (Thanks to Matt Hofacker for the idea) It can optionally open the complete dataset with PowerShell GridView (great idea StefanRoth!) for easy viewing and filtering. The merged CSV file can be opened in Excel if needed.
This has been baked into the SCOMHelper PowerShell module available here.
Tested with Operations Manager 2016, 2012 R2
2018.04.06: Added “Rule/Monitor DisplayName” column to output.