Hier mal wieder ein kleines Script aus der Reihe Quick and Dirty. Eigentlich ist das Script aus dem Hintergrund entstanden ein AntiSPAM Gateway zu überwachen, welches gern mal überlastet war und keine Mails mehr verarbeitet hatte. Leider stellten sich „Nur-Text“-Mails ohne Hyperlink oder sonstigem Content als nicht gerade aussagekräftig heraus, denn die wurden praktisch immer verarbeitet. Das Script sollte Alarm schlagen, wenn die Mails länger als eine gewisse Zeit im AntiSPAM Gateway hängen, also den SMTP Roundtrip messen. Es kam aber so nie zum Einsatz. Also gibt es hier eine etwas abgewandelte Version um zumindest die Zeit zu messen, die eine Mail vom Verschicken, bis zum Empfang braucht. Das Script kann in der Exchange Management Shell ausgeführt werden:
Wer es gebrauchen kann, kann es auch etwas anpassen um beispielsweise Alarm zu schlagen, wenn keine Mails mehr ankommen, oder gesendet werden können.
Einfach das folgende Script in eine PS1 Datei kopieren und die ersten 3 Zeilen entsprechend anpassen:
$recipient = "frank@frankysweb.de" $smtpserver = "smtp.frankysweb.local" $sleep = 15 write-host "" $start = (get-date).AddMinutes(-20) $end = (get-date).AddMinutes(+20) $subject = get-random write-host "Sendig Testmail with Subject: $subject" $sendtime = get-date Send-MailMessage -SmtpServer $smtpserver -From $recipient -To echo@tu-berlin.de -Subject $subject -Body $subject write-host "Waiting $sleep Seconds" sleep -seconds $sleep write-host "Getting Message Tracking Logs" try { $tracking = Get-TransportServer | Get-MessageTrackingLog -EventId RECEIVE -Recipients $recipient -start $start -end $end | where {$_.messagesubject -match "$subject"} | select timestamp,MessageSubject } catch { } write-host "" write-host "Results:" write-host "" if ($tracking) { $receivetime = $tracking.TimeStamp $roundtrip = ($receivetime - $sendtime).totalseconds $roundtrip = [math]::Round($roundtrip,2) write-host "Found Message with Subject: $subject" -foregroundcolor green write-host "SMTP Roundtrip: $roundtrip Seconds" -foregroundcolor green } else { write-host "Message with Subject not found: $subject" -foregroundcolor red write-host "Roundtrip TimeOut" }
„Sleep“ gibt die Zeit in Sekunden an, die gewartet wird, bevor die Message Tracking Logs nach der gesendeten Mail durchsucht werden.
Aktuelle Alternativen zum Mirror TU-Berlin sind echo@tu-chemnitz.de; echo@univie.ac.at
Immer noch ein perfekt passendes Script, falls man von On-Prem testen muß.
Für Tests aus dem Internet habe ich bisher außer MXAlert nichts wirklich passendes oder sogar kostenloses gefunden.
Hi,
hier gibt es eine Alternative:
echo(at)charite.de
Die Mail benötigt allerdings gut 10 Minuten bis zur Antwort. Bitte auch die Nutzungsbedingung beachten:
If you want to use this service for routine monitoring, you *MUST* ask postmaster(at)charite.de for permission before doing so.
Gruß,
Frank
Schade eigentlich :-(
Sehr geehrte Damen und Herren,
echo.tu-berlin.de wurde zum 1.1.2018 eingestellt, Ihre E-Mails werden nicht gelesen.
Technische Universitaet Berlin, Germany
Hallo markus, Hallo Alexander,
ich schaue mal ob ich eine Alternative dazu finde.
Gruß, Frank