Microsoft Exchange // Message Tracking in OnPrem und Exchange Online

Microsoft Microsoft Exchange Microsoft Exchange Online

In diesem Beitrag zeige ich anhand einer Testmail mit dem Betreff „Neuer Server“ den Mailfluss und die Protokollierung via PowerShell – sowohl für Exchange OnPrem als auch Exchange Online.

Der Nachrichtenfluss dieser Testmail läuft wie folgt:

📩 Extern → Hornetsecurity → Exchange OnPrem → Exchange Online

Das bedeutet: Die Nachricht lässt sich in beiden Umgebungen nachvollziehen. Dieser Artikel behandelt exemplarisch das Message Tracking einer E-Mail vom Absender abow@domain.tld mit Startdatum 21.01.2026.


🔍 Teil 1: Exchange OnPrem

💻 Befehl:

Get-MessageTrackingLog -Sender "abow@domain.tld" -Start "01/21/2026" | Select * | Out-GridView

🧠 Erklärung:

ParameterBedeutung
Get-MessageTrackingLogStartet die Suche im lokalen Exchange-Tracking-Log
-SenderFiltert nach dem Absender
-StartStartdatum im Format MM/DD/YYYY (optional mit Uhrzeit)
`Select *`
`Out-GridView`

🧩 Nützliche Felder:

  • EventId: z. B. RECEIVE, SEND, DELIVER, SENDEXTERNAL, AGENTINFO
  • MessageSubject: Titel der E-Mail
  • Source: Ursprung des Events, z. B. STOREDRIVER, SMTP, PUBLICFOLDER
  • Recipients: Liste der Empfänger

📖 Weitere Infos: Microsoft-Dokumentation zum Cmdlet


☁️ Teil 2: Exchange Online (Microsoft 365)

Seit etwa 2020 ist das klassische MessageTrackingLog in Exchange Online nicht mehr verfügbar. Stattdessen gibt es:

  • Get-MessageTrace – Überblick über Nachrichtentransport
  • Get-MessageTraceDetail – Detailinformationen

📦 Beispiel 1: Get-MessageTrace

Get-MessageTrace `
  -SenderAddress "abow@domain.tld" `
  -StartDate "01/21/2026" `
  -EndDate "01/22/2026" |
  Select *

Wichtig: Das Enddatum muss einen Tag später gesetzt werden, da Exchange Online tagesweise auswertet.

📖 Doku: Get-MessageTrace (Microsoft)


🔬 Beispiel 2: Get-MessageTraceDetail

Variante A: Per Pipeline direkt aus dem vorherigen Befehl:

Get-MessageTrace `
  -SenderAddress "abow@domain.tld" `
  -StartDate "01/21/2026" `
  -EndDate "01/22/2026" |
Get-MessageTraceDetail |
Select *

Variante B: Manuell mit MessageTraceId und Empfängeradresse:

Get-MessageTraceDetail `
  -MessageTraceId "GUID" `
  -RecipientAddress "abow@domain.tld"

⚠️ Hinweis

Ein Nachteil von Get-MessageTraceDetail: Die Umwandlung zwischen onmicrosoft-Adresse und primärer SMTP-Adresse wird nicht sauber dargestellt – Probleme bei der Adressauflösung bleiben also u. U. unentdeckt.

📖 Doku: Get-MessageTraceDetail (Microsoft)


✅ Fazit

  • Exchange OnPrem bietet detailliertes, lokales Tracking per Get-MessageTrackingLog
  • Exchange Online nutzt Get-MessageTrace und Get-MessageTraceDetail – weniger granular, aber ausreichend für Standardanalysen
  • Für Hybrid-Umgebungen (z. B. mit Hornetsecurity oder zentralem Mailflow) muss beide Seiten geprüft werden
  • Nutze GUI-Ausgaben (Out-GridView), wenn du schnell manuell analysieren willst

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert