As part of authoring on the upcoming System Center 2012 Operations Manager Unleashed book, I was recently trying to track down where some dashboard views were stored. They are built into OpsMgr 2012 and appeared to have been part of a sealed management pack. They are in the Application Monitoring folder, “Applications” and in the Web Application Availability Monitoring folder, “Web Application Status” as shown below:
To find these, I used two PowerShell scripts:
The first exported all management packs from OpsMgr into the c:\mps directory. (QuickTrick: Another option would be to search the existing default location where all management packs are extracted by OpsMgr - C:\Program Files\System Center 2012\Operations Manager\Server\Health Service State\Management Packs on a management server if OpsMgr 2012 was installed on the C drive default location).
The steps I took to export all MP’s were:
Get-SCOMManagementPack | Export-SCOMManagementPack –Path “c:\mps”
The next the step was to find the specific view name that I was looking for. Since the management packs are all exported as xml files, these are searchable and the folder naming convention in the xml file starts with <Name> and ends with </Name>. So the commands to find the first of these was:
Get-ChildItem -recurse | Select-String -pattern "<Name>Web Application Status</Name>" | group path | select name
It appears that the “Web Application Status” dashboard is in the Microsoft.SystemCenter.WebApplicationSolutions.Library MP.
The next step was to look for the second view. A second search resulted in:
Get-ChildItem -recurse | Select-String -pattern "<Name>Applications</Name>" | group path | select name
It appears that the “Applications” dashboard is in the Microsoft.SystemCenter.ApplicationMonitoring.360.Template.Dashboards MP.
Summary: Using PowerShell in OpsMgr 2012 it is extremely quick and easy to export all management packs and to identify specific text within a management pack.