Nachrichten aus Warteschlangen exportieren

Gilt für: Exchange Server 2013

Wenn Sie eine Nachricht aus einer Warteschlange in eine Datei exportieren, wird die Nachricht nicht aus der Warteschlange entfernt. Eine Kopie der Nachricht wird am angegebenen Speicherort als Nur-Text-Datei erstellt. Die resultierende Datei kann in einer Anwendung angezeigt werden, z. B. in einem Text-Editor oder einer E-Mail-Clientanwendung, oder die Nachrichtendatei kann mithilfe des Replay-Verzeichnisses auf jedem anderen Postfachserver oder Edge-Transport-Server innerhalb oder außerhalb der Exchange-Organisation erneut übermittelt werden.

Was sollten Sie wissen, bevor Sie beginnen?

  • Geschätzte Zeit bis zum Abschließen der einzelnen Verfahren: 15 Minuten

  • Bevor Sie diese Verfahren ausführen können, müssen Ihnen die entsprechenden Berechtigungen zugewiesen werden. Informationen zu den von Ihnen benötigten Berechtigungen finden Sie unter "Warteschlangen" im Thema Berechtigungen für den Nachrichtenfluss.

  • Die Nachrichten müssen sich im Zustand "Angehalten" befinden, damit der Nachrichtenexportprozess erfolgreich verlaufen kann. Sie können Nachrichten aus Zustellungswarteschlangen, der Nicht-erreichbar-Warteschlange und der Warteschlange für nicht verarbeitbare Nachrichten exportieren. Nachrichten in der Warteschlange für nicht verarbeitete Nachrichten befinden sich bereits im Zustand "Angehalten". Nachrichten in der Übermittlungswarteschlange können weder angehalten noch exportiert werden.

  • Sie können nicht die Warteschlangenanzeige in der Exchange-Toolbox zum Exportieren von Nachrichten verwenden. Sie können jedoch über die Warteschlangenanzeige Nachrichten suchen, identifizieren und anhalten, bevor Sie sie über die Shell exportieren.

  • Überprüfen Sie folgende Informationen zum Speicherort des Zielverzeichnisses für die Nachrichtendateien:

    • Das Zielverzeichnis muss vorhanden sein, bevor Nachrichten exportiert werden können. Dieses Verzeichnis müssen Sie selbst erstellen. Wenn kein absoluter Pfad angegeben ist, wird das aktuelle Arbeitsverzeichnis der Exchange-Verwaltungsshell verwendet.

    • Es kann sich um einen lokalen Pfad auf dem Server mit Exchange oder um einen UNC-Pfad (Universal Naming Convention) zu einer Freigabe auf einem Remoteserver handeln.

    • Ihr Konto muss über die Berechtigung Write für das Zielverzeichnis verfügen.

    • Stellen Sie beim Angeben eines Dateinamens für die exportierten Nachrichten sicher, dass die Datei die Dateinamenerweiterung EML aufweist, damit die Datei problemlos in E-Mail-Clientanwendungen geöffnet oder ordnungsgemäß vom Wiedergabeverzeichnis verarbeitet werden kann.

  • Informationen zu Tastenkombinationen für die Verfahren in diesem Thema finden Sie unter Tastenkombinationen in der Exchange-Verwaltungskonsole.

Tipp

Liegt ein Problem vor? Bitten Sie in den Exchange-Foren um Hilfe. Besuchen Sie die Foren auf Exchange Server.

Verwenden der Shell zum Exportieren einer bestimmten Nachricht aus einer bestimmten Warteschlange

Führen Sie den folgenden Befehl aus, um eine bestimmte Nachricht aus einer bestimmten Warteschlange zu exportieren:

Export-Message -Identity <MessageIdentity> | AssembleMessage -Path <FilePath>\<FileName>.eml

In diesem Beispiel wird eine Kopie einer Nachricht mit dem InternalMessageID -Wert "1234", die sich in der Zustellungswarteschlange für "Contoso.com" auf dem Server "Mailbox01" befindet, in "D:\Contoso Export\export.eml" exportiert.

Export-Message -Identity Exchange01\Contoso.com\1234 | AssembleMessage -Path "D:\Contoso Export\export.eml"

Verwenden der Shell zum Exportieren aller Nachrichten aus einer bestimmten Warteschlange

Wenn Sie alle Nachrichten aus einer bestimmten Warteschlange exportieren und den InternetMessageID -Wert jeder Nachricht als Dateinamen verwenden möchten, wählen Sie die folgende Syntax.

Get-Message -Queue <QueueIdentity> | ForEach-Object {$Temp=<Path>+$_.InternetMessageID+".eml";$Temp=$Temp.Replace("<","_");$Temp=$Temp.Replace(">","_");Export-Message $_.Identity | AssembleMessage -Path $Temp}

Beachten Sie, dass der InternetMessageID -Wert eckige Klammern (> und <) enthält, die entfernt werden müssen, da sie in Dateinamen unzulässig sind.

Dieser Beispielbefehl exportiert eine Kopie aller Nachrichten aus der Zustellungswarteschlange auf dem Server "Mailbox01" in das lokale Verzeichnis "D:\Contoso Export".

Get-Message -Queue Mailbox01\Contoso.com | ForEach-Object {$Temp="D:\Contoso Export\"+$_.InternetMessageID+".eml";$Temp=$Temp.Replace("<","_");$Temp=$Temp.Replace(">","_");Export-Message $_.Identity | AssembleMessage -Path $Temp}

Verwenden der Shell zum Exportieren bestimmter Nachrichten aus allen Warteschlangen auf einem Server

Wenn Sie bestimmte Nachrichten aus allen Warteschlangen auf einem Server exportieren und den InternetMessageID -Wert jeder Nachricht als Dateinamen verwenden möchten, wählen Sie die folgende Syntax.

Get-Message -Filter "<MessageFilter>" [-Server <ServerIdentity>] | ForEach-Object {$Temp=<Path>+$_.InternetMessageID+".eml";$Temp=$Temp.Replace("<","_");$Temp=$Temp.Replace(">","_");Export-Message $_.Identity | AssembleMessage -Path $Temp}

Beachten Sie, dass der InternetMessageID -Wert eckige Klammern (> und <) enthält, die entfernt werden müssen, da sie in Dateinamen unzulässig sind.

Dieser Beispielbefehl exportiert eine Kopie aller Nachrichten von Absendern in der Domäne "contoso.com" aus allen Warteschlangen auf dem Server "Mailbox01" in das lokale Verzeichnis "D:\Contoso Export".

Get-Message -Filter "FromAddress -like '*@contoso.com'" -Server Mailbox01 | ForEach-Object {$Temp="D:\Contoso Export\"+$_.InternetMessageID+".eml";$Temp=$Temp.Replace("<","_");$Temp=$Temp.Replace(">","_");Export-Message $_.Identity | AssembleMessage -Path $Temp}

Hinweis

Wenn Sie den Server-Parameter weglassen, wird der Befehl auf dem lokalen Server ausgeführt.