SCSM 2010: Via Powershell Activities ermitteln, die “überfällig” sind

Andreas Baumgarten am 15. Februar 2011

Für die Automatisierung im  Microsoft System Center 2010 (2010)  bietet sich die Möglichkeit, Skripte/Befehle zu nutzen. Für die 2010 spezifischen Aufgaben werden hierfür die SMlets (http://smlets.codeplex.com/) benötigt.

Um z.B. alle Activities per Powershell Skript zu ermitteln, die den Status “In Progress” besitzen und seit 30 Minuten nicht mehr verändert wurden, ist folgendes Skript einsetzbar (die Zeit ist beliebig im PowerShell Skript veränderbar):

01 –  # Import Module SMlets

02 – Import-Module -Name SMlets -Force

03 – # Get Activity Status From List

04 – $ActivityActive = Get-SCSMEnumeration ActivityStatusEnum.Active

05 – # Set Breached Date/Time 0 days, 0 hours, 30 minutes, 0 seconds, …

06 – $LastModifiedBreached = New-Object Timespan 0,0,30,0,0

07 – # Get Activities Status “In Progress”

08 – $ActivitiesBreached = Get-SCSMObject System.WorkItem.Activity$|?{$_.Status -eq $ActivityActive -and $_.LastModified -lt (Get-Date).Subtract($LastModifiedBreached)}

09 – # Output

10 – $ActivitiesBreached | fl

In der Zeile 06 kann die Zeitspanne beliebig verändert werden. Die erste Stelle des Timespan steht für die Tage, die zweite Stelle für die Stunden, die dritte Stelle für Minuten, die vierte Stelle für Sekunden und die letzte Stelle für Millisekunden.

(Vielen Dank an dieser Stelle an Patrik Sundqvist für die Inspiration für das obenstehende Skripte!)

Tags: , ,

Kommentare sind geschlossen.