Hallo,
ich habe ein kleines Problem mit einem Skript, das ich verwenden möchte, um herauszufinden, wann bestimmte Verteiler das letzte mal verwendet wurden.
Bislang habe ich dazu in einer Schleife für jeden Verteiler folgendes aufgerufen:
$tracking = get-messagetrackinglog -start $date -eventid EXPAND -recipients $distributionGroup -resultsize unlimited | select timestamp
das konnte ich dann sortieren und problemlos auswerten:
$trackingDate = $tracking | select -last 1
$trackingDate = $trackingDate.ToShortDateString()
$trackingnumber = ($tracking).count
Allerdings ist das bei entsprechend vielen Verteilern sehr langsam, weil jedes Mal das Tracking Log für x Tage geprüft werden muss.
Daher möchte ich jetzt das TrackingLog einmal in ein Array auslesen und danach in der Schleife für jeden Verteiler nur die relevanten Daten aus dem Array ziehen:
$tracking = get-messagetrackinglog -start $date -eventid EXPAND -resultsize unlimited | select timestamp,recipients
$tracking = $tracking | sort -property timestamp
foreach ($group in $groups){
#Das funkioniert nicht
$trackingSubset = $tracking.recipients -like $group.windowsemailaddress
}
Ich möchte gerne für jeden Verteiler ein Subset aus dem Array auslesen, in dem nur die relevanten Einträge vorhanden sind.
Hab die Lösung. Ich darf nicht select timestamp,recipients nehmen, sondern muss select timestamp,RelatedRecipientAddress nehmen. Ich hätte nicht das funktionierende Skript ummodeln sollen, sondern es kopieren. Dann wäre mir der Fehler schneller aufgefallen. :cry: