Esportare messaggi dalle code in Exchange Server

SI APPLICA A:YES-IMG-162016 yes-img-192019 yes-img-seEdizione in abbonamento

Nei server Cassette postali e Trasporto Edge di Exchange Server è possibile esportare i messaggi in coda in file. I messaggi esportati non vengono rimossi dalla coda. Copie dei messaggi vengono eseguite nella posizione specificata come file di testo normale. È possibile visualizzare i file dei messaggi nel Blocco note o in Outlook ed è possibile inviare nuovamente i file dei messaggi utilizzando la directory di riesecuzione in qualsiasi altro server Cassette postali o Trasporto Edge all'interno o all'esterno dell'organizzazione di Exchange.

Che cosa è necessario sapere prima di iniziare?

  • Tempo stimato per il completamento di ciascuna procedura: 5 minuti

  • Per eseguire queste procedure, è necessario disporre delle autorizzazioni appropriate. Per sapere quali autorizzazioni sono necessarie, vedere "Code" nell'argomento Autorizzazioni per il flusso di posta.

  • Per esportare i messaggi da una coda di recapito, dalla coda di invio o dalla coda non raggiungibile, è necessario che i messaggi siano nello stato sospeso. Per le code attive e integre, sospendi prima la coda in modo da poter sospendere i messaggi. I messaggi nella coda dei messaggi potenzialmente dannosi sono già in stato sospeso. Per altre informazioni, vedere Sospendere le code e Sospendere i messaggi nelle code.

  • Non è possibile utilizzare il Visualizzatore code nella Casella degli strumenti di Exchange per esportare messaggi. Tuttavia, è possibile utilizzare Visualizzatore code per individuare, identificare e sospendere i messaggi prima di esportarli utilizzando Exchange Management Shell. Per ulteriori informazioni sul Visualizzatore code, vedere Visualizzatore code. Per sapere come aprire Exchange Management Shell nell'organizzazione di Exchange locale, vedere Open the Exchange Management Shell.

  • Quando si esportano i messaggi da una coda, i messaggi non vengono rimossi dalla coda. Se si inviano nuovamente i messaggi esportati utilizzando la directory di riproduzione, è necessario rimuovere i messaggi dalla coda per evitare recapito duplicato dei messaggi. Per ulteriori informazioni, vedere Rimozione dei messaggi dalle code.

  • Verificare le informazioni seguenti sulla posizione di destinazione per i file dei messaggi esportati:

    • La cartella di destinazione deve esistere prima dell'esportazione dei messaggi e non verrà creata automaticamente. Se non si specifica il percorso completo, i file vengono scritti nella directory di lavoro di Exchange Management Shell corrente.
    • Il percorso può essere locale al server Exchange oppure può essere un percorso UNC per una condivisione su un server remoto (\server\share).
    • L'account deve disporre dell'autorizzazione di scrittura nella cartella di destinazione.
  • Viene usato il valore della proprietà InternetMessageID del messaggio per i nomi dei file dei messaggi esportati per garantirne l'univocità. Le procedure includono la procedura per rimuovere le parentesi angolate (> e <), perché non sono consentite nei nomi di file. Viene inoltre usata l'estensione .eml per consentire all'utente di aprire facilmente i file in Outlook o inviarli nuovamente tramite la directory di riproduzione.

  • Per altre informazioni sull'identità e i filtri per le code e i messaggi nelle code, vedere gli argomenti seguenti:

  • Per informazioni sui tasti di scelta rapida che è possibile utilizzare con le procedure in questo argomento, vedere Tasti di scelta rapida nell'interfaccia di amministrazione di Exchange.

Consiglio

Problemi? Chiedere assistenza nel forum di Exchange Server all'indirizzo Exchange | Exchange Server | Gestione.

Utilizzo di Exchange Management Shell per esportare un messaggio specifico da una coda

Per esportare un messaggio specifico da una coda, utilizzare la sintassi seguente:

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

In questo esempio vengono eseguite le azioni seguenti sul server denominato Mailbox01:

  1. Sospende la coda di recapito contoso.com.

  2. Sospende il messaggio nella coda con il valore InternalMessageID 1234.

  3. Esporta una copia del messaggio nel file D:\contoso Export\export.eml.

Suspend-Queue Mailbox01\contoso.com
Suspend-Message -Identity Mailbox01\contoso.com\1234
Export-Message -Identity Mailbox01\contoso.com\1234 | AssembleMessage -Path "D:\Contoso Export\export.eml"

Usare Exchange Management Shell per esportare tutti i messaggi da una coda

Per esportare tutti i messaggi da una coda e utilizzare il valore InternetMessageID di ogni messaggio come nome file, utilizzare la sintassi seguente:

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

In questo esempio vengono eseguite le azioni seguenti sul server denominato Mailbox01:

  1. Sospende la coda di recapito contoso.com.
  2. Sospende tutti i messaggi nella coda.
  3. Esporta le copie dei messaggi nella cartella locale denominata D:\Contoso Export.
Suspend-Queue Mailbox01\contoso.com
Get-Queue Mailbox01\contoso.com | Get-Message -ResultSize Unlimited | Suspend-Message
Get-Message -Queue Mailbox01\Contoso.com -ResultSize Unlimited | ForEach-Object {$Temp="D:\Contoso Export\"+$_.InternetMessageID+".eml"; $Temp=$Temp.Replace("<","_"); $Temp=$Temp.Replace(">","_"); Export-Message $_.Identity | AssembleMessage -Path $Temp}

Usare Exchange Management Shell per esportare messaggi specifici da tutte le code di un server

Per esportare messaggi specifici da tutte le code di un server e utilizzare il valore InternetMessageID di ogni messaggio come nome file, utilizzare la sintassi seguente:

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

In questo esempio vengono eseguite le azioni seguenti sul server denominato Mailbox01:

  1. Sospende tutte le code nel server.
  2. Sospende tutti i messaggi in tutte le code del server dai mittenti nel dominio fabrikam.com.
  3. Esporta le copie dei messaggi nella cartella locale denominata D:\Fabrikam Export.
Suspend-Queue -Server Mailbox01
Suspend-Message -Filter "FromAddress -like '*@fabrikam.com'" -Server Mailbox01
Get-Message -Filter "FromAddress -like '*@fabrikam.com'" -Server Mailbox01 -ResultSize Unlimited | ForEach-Object {$Temp="D:\Fabrikam Export\"+$_.InternetMessageID+".eml"; $Temp=$Temp.Replace("<","_"); $Temp=$Temp.Replace(">","_"); Export-Message $_.Identity | AssembleMessage -Path $Temp}

Utilizzare Exchange Management Shell per esportare tutti i messaggi da tutte le code in un server

Per esportare tutti i messaggi da tutte le code in un server e utilizzare il valore InternetMessageID di ogni messaggio come nome file, utilizzare la sintassi seguente:

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

In questo esempio vengono eseguite le azioni seguenti sul server denominato Mailbox01:

  1. Sospende tutte le code nel server.
  2. Sospende tutti i messaggi in tutte le code del server.
  3. Esporta le copie dei messaggi nella cartella locale denominata D:\Mailbox01 Esporta.
Suspend-Queue -Server Mailbox01
Get-Queue -Server Mailbox01 | Get-Message -ResultSize Unlimited | Suspend-Message
Get-Message -Server Mailbox01 -ResultSize Unlimited | ForEach-Object {$Temp="D:\Mailbox01 Export\"+$_.InternetMessageID+".eml"; $Temp=$Temp.Replace("<","_"); $Temp=$Temp.Replace(">","_"); Export-Message $_.Identity | AssembleMessage -Path $Temp}