Mostly Anything

IT Blog über VMWare, SQL, Storage, Security und mehr.

Mostly Anything header image 2

Resolution State in SCOM 2007 R2 automatisch setzen

Oktober 17th, 2011 · Keine Kommentare

Bei einer SCOM Umgebung eines Kunden setzen wir verschiedene Resolution States für die verschiedenen Gruppen (Operations, Application Support, DBAs etc) ein. Die Alerts, die vom SQL Management Pack generiert werden sollen nun direkt den entsprechenden Resolution State bekommen, damit sie in der View der entsprechenden Gruppe landen.

Das ganze können wir folgendermassen lösen. Wir erstellen einen Notification Command Channel, erstellen einen Subscriber und eine Subscription (nur für neue Alerts) und führen dann ein Powershell Script aus, dass den entsprechenden Resolution Code setzt.

Das Script sieht folgendermassen aus:

Param (
	[string]$RMS = "RootManagementServer"
)
# Start the OpsMgr PSSnapin
Add-PSSnapin "Microsoft.EnterpriseManagement.OperationsManager.Client" -ErrorVariable errSnapin ;
Set-Location "OperationsManagerMonitoring::" -ErrorVariable errSnapin ;
New-ManagementGroupConnection -ConnectionString:$RMS -ErrorVariable errSnapin ;
set-location $RMS -ErrorVariable errSnapin ;

# Get all new (0) alerts where the MonitoringObjectFullName starts with Microsoft.SQLServer
$alerts = Get-Alert | ?{$_.ResolutionState -eq "0" -and $_.MonitoringObjectFullName -like "Microsoft.SQLServer*"}

foreach($alert in $alerts) {
	#Set the resolution state to DBA Group (15)
	$alert.ResolutionState = "15"
	$alert.Update("")
}

# Remove the OpsMgr PSSnapin
Remove-PSSnapin Microsoft.EnterpriseManagement.OperationsManager.Client

Wir verbinden uns zuerst mit dem RMS und holen alle Alerts mit Resolutio State von 0 (NEW). Wir können hier auch noch dem MonitoringObjectFullName filtern, der mit Microsoft.SQLServer beginnt (alle Alerts vom SQL Server MP).
Bei diesen Alerts setzen wir den Resolution State dann auf die gewüschte Zahl.

Jetzt müssen wir SCOM noch so konfigurieren, dass dieses Script bei den neuen Alerts ausgeführt wird:

Neuen Notification Channel erstellen:
Administration – Notifications – Channels – New Channel
Namen und Beschreibung ausfüllen. Unter Settings bei Full Path den Pfad zur Powershell angeben. Bei Command Line Parameters das eigentliche Script aufführen
Command Notification Channel
Dann einen Subscriber erstellen mit dem Channel Type „Command“ und useren Channel, den wir vorher erstellt haben. Subscriber
Nun mit einer Subscription das ganze zusammenfügen. Wir wählen unter Criteria nur die Alerts mit Resolution State 0 aus. Wir wollen ja, dass nur neue Alerts bearbeitet werden. Subscription
Als Subscriber und Channel die vorher erstellten auswählen und ohne Alert Aging erstellen Subscription Channel

Nun wird bei jedem neuen Alert das Script ausgeführt und falls es ein Alert vom SQL MP ist der entsprechende Resolution State gesetzt. Natürlich können wir im Script auch noch weitere States für andere MPs setzen.

Die DBAs bekommen dann noch eine neue Alert View, bei der nur die Alerts mit dem State 15 angezeigt werden und sind happy, da sie die restlichen Alerts, die sie nicht interessieren nicht sehen.

Tags: Microsoft Sql Server · Operations Manager · Powershell · Uncategorized

0 Antworten bis jetzt ↓

  • Es gibt keine Kommentare bis jetzt...Trete Sachen weg, die vom Formular runterfallen.

Hinterlasse ein Kommentar