Hallo zusammen,
Ich habe da ein paar Scripts für die Forefront Management Shell erstellt.
Wenn man eine ganz normale Powershell geladen hat, muss mann zuerst die Snap-ins für Forefront laden. Das geschieht mit dem folgenden Befehl:
Add-PsSnapin FSSPSSnapin
Anschliessend habe ich das Get-FseSpamReport CMDlet ausgeführt mit den Parametern -Starttime und -Endtime.
Get-FseSpamReport -Starttime "01.02.2010 00:00" -Endtime "28.02.2010 00:00"

War ein bisschen viel für meinen Geschmack - ich lasse mir also nur noch das anzeigen, was ich möchte.
Get-FseSpamReport -Starttime "01.02.2010 00:00" -Endtime "28.02.2010 00:00" | fl ConnectionFilterMessagesReceived,ConnectionFilterMessagesBlocked,SmtpRecipientFilterMessagesBlocked,ContentFilterRejected,MessagesMarkedSclNegative1

Nun wäre, es ja noch cool, wenn ich das Datum nicht mehr selbst setzen müsste, sonder ein Script anstossen könnte, welche die Start- und Endzeit automatisch setzt. Für das heutige Datum sieht das dann so aus...
################################################################################
# Forefront Spamreport Today
#
# (c) 2010 Andres Bohren / www.icewolf.ch / blog.icewolf.ch
################################################################################
Param ([system.Datetime] $date = $(get-date -format "MM/dd/yyyy"))
$start = $date
$end = $date.addDays(1)
#Check if Forefront Snapin is already loaded
$Snapins = get-pssnapin
if ($Snapins -match "FSSPSSnapin")
{
Write-Output $("Forefront PS Snapin already loaded")
}
else
{
Write-Output $("Loading Forefront PS Snapin")
Add-PsSnapin FSSPSSnapin
}
Write-Output $("Spam Report from {0} to {1}" -f $start,$end)
Get-FseSpamReport -Starttime $start -Endtime $end| fl ConnectionFilterMessagesReceived,ConnectionFilterMessagesBlocked,SmtpRecipientFilterMessagesBlocked,ContentFilterRejected,MessagesMarkedSclNegative1
Das Resultat sieht dann so aus

Für das gestrige Datum dann so.

Die Scrips können hier heruntergeladen werden:
Enjoy
Andres Bohren
