How to remove old product connectors from System Center Operations Manager 2007

hotfixJust a quick heads up on a new KB article we published today:

=====

Symptoms

Removing an old product connector from System Center Operations Manager 2007 (OpsMgr 2007) may be necessary if the product connector is no longer used in the environment. There is no Delete option in admin console UI for product connectors so the script below can be used to achieve the desired results.

Resolution

Use the following Powershell script to remove the product connector:

Note Internal Connectors should not be removed, also be sure to backup both the Operational DB and the Data Warehouse before running this. Also save the below as DeleteConnector.ps1

param( [String] $connectorName, [String] $mgName="localhost" ) Import-Module OperationsManager $mg = new-object Microsoft.EnterpriseManagement.ManagementGroup $mgNameNew-ManagementGroupConnection -ComputerName $mgName ########################################################################################## # Configures a connector with the specified name. ########################################################################################## function New-Connector([String] $name) { $connectorForTest = $null; $connectorForTest = Get-Connector | where {$_.Name -eq $name} if ($connectorForTest -eq $null) { $admin = $mg.ConnectorFramework $testConnector = New-Object Microsoft.EnterpriseManagement.ConnectorFramework.ConnectorInfo $testConnector.Name = $name $testConnector.Description = "${name} Description" $testConnector.DiscoveryDataIsManaged = $false $connectorForTest = $admin.Setup($testConnector) $connectorForTest.Initialize(); } return $connectorForTest } ########################################################################################## # Removes a connector with the specified name. ########################################################################################## function Remove-Connector([String] $name) { $admin = $mg.ConnectorFramework $testConnector = Get-Connector -Name $nameforeach($alert in $testConnector.GetMonitoringAlerts()) { $alert.ConnectorId = $null; $alert.Update("Delete Connector"); } if($testConnector.Initialized) { $testConnector.Uninitialize() } $connectorIdForTest = $admin.Cleanup($testConnector) } ########################################################################################## # Delete a connector's Subscription ########################################################################################## function Delete-Subscription([String] $name) { $connector = Get-Connector | where {$_.Name -eq $name} $subs = $mg.ConnectorFramework.GetConnectorSubscriptions() $admin = $mg.ConnectorFrameworkforeach($sub in $subs) { if($sub.MonitoringConnectorId -eq $connector.id) { $admin.DeleteConnectorSubscription($admin.GetConnectorSubscription($sub.Id)) } } } #New-Connector $connectorNamewrite-host "Delete-Subscription" Delete-Subscription $connectorNamewrite-host "Remove-Connector" Remove-Connector $connectorName

More Information

Usage: DeleteConnector.ps1 para1 para2

para1: Connector Name

para2: MS name, Optional, default value: localhost

Note If you attempt to delete the Operations Manager Internal Connector from the database it will generate the following error:
Exception content: Exception calling "Setup" with "1" argument(s): "Discovery data generated by invalid connector:7431E155-3D9E-4724-895E-C03BA951A352."

=====

For the most current version of this article please see the following:

2626670: How to remove old product connectors from System Center Operations Manager 2007

J.C. Hornbeck | System Center Knowledge Engineer

App-V Team blog: https://blogs.technet.com/appv/
AVIcode Team blog: https://blogs.technet.com/b/avicode
ConfigMgr Support Team blog: https://blogs.technet.com/configurationmgr/
DPM Team blog: https://blogs.technet.com/dpm/
MED-V Team blog: https://blogs.technet.com/medv/
OOB Support Team blog: https://blogs.technet.com/oob/
Opalis Team blog: https://blogs.technet.com/opalis
Orchestrator Support Team blog: https://blogs.technet.com/b/orchestrator/
OpsMgr Support Team blog: https://blogs.technet.com/operationsmgr/
SCMDM Support Team blog: https://blogs.technet.com/mdm/
SCVMM Team blog: https://blogs.technet.com/scvmm
Server App-V Team blog: https://blogs.technet.com/b/serverappv
Service Manager Team blog: https://blogs.technet.com/b/servicemanager
System Center Essentials Team blog: https://blogs.technet.com/b/systemcenteressentials
WSUS Support Team blog: https://blogs.technet.com/sus/

clip_image001 clip_image002