Het onderstaande bericht is gepromoveerd uit de kladbak vanwege een recente klant engagement. Exchange beheerders zijn erg gewend geraakt aan de message tracking UI tools die zijn meegeleverd met de vorige Exchange builds. Dit is volkomen begrijpelijk aangezien zij talloze issues moeten onderzoeken en oplossen. Er kan een vraag zijn of Steve in accounting die e-mail vorige week heeft gekregen, of waarom de berichten van Anne in sales in een wachtrij blijven hangen?

Vanaf de laatste 10 jaar of zo is de Exchange Message Tracking Tool het wapen van keuze geweest voor veel admins bij het troubleshooten van dergelijke issues. Echter, dit bestaat niet in Exchange 2013 of 2016. In plaats daarvan kunnen we Delivery Reports of PowerShell gebruiken om de message tracking logs te bevragen.

Scroll naar beneden voor een pro tip over het toevoegen van een GUI terug naar message tracking.

In de meest eenvoudige vorm kunnen we Get-MessageTrackingLog gebruiken om te zoeken en alle hits van de opgegeven server te retourneren. In een grote organisatie is het scrollen door de ganse uitvoer een tijdverspilling en niet efficiënt. We moeten wat filter logica toepassen.

Zoeken op afzender

 Get-MessageTrackingLog -Sender [email protected]

Zoeken op ontvanger

 Get-MessageTrackingLog -Recipient [email protected]

Zoeken op domein van de ontvanger

Merk op dat het ook mogelijk is om een wildcard te gebruiken in de zoekopdracht om een heel domein op te nemen:

 Get-MessageTrackingLog -Recipients *@hotmail.co

Aternatief kunnen we een where statement gebruiken, zoals hieronder, hoewel dit gewoonlijk langzamer zal zijn

 Get-MessageTrackingLog | Where {$_.Recipients -like "*tailspintoys.com"}

Zoeken op onderwerp

 Get-MessageTrackingLog -MessageSubject "I Am Zorg"

Zoeken op berichtID

 Get-MessageTrackingLog -MessageId <MessageID>

Zoeken op tijdvenster

 Get-MessageTrackingLog -ResultSize Unlimited -Start "3/28/2015 8:00AM" -End "3/28/2015 5:00PM" -EventId "Fail" -Sender "mailto:[email protected]"

Zoeken Op Message EventID

 Get-MessageTrackingLog -ResultSize Unlimited -EventId "Fail"

Meervoudig Voorbeeld – Tijdvenster & EventID & Afzender

De verschillende elementen kunnen worden gecombineerd om ongewenste resultaten uit te filteren.

 Get-MessageTrackingLog -ResultSize Unlimited -Start "3/28/2015 8:00AM" -End "3/28/2015 5:00PM" -EventId "Fail" -Sender "[email protected]"

Get All Messages In the Last Hour

Merk op dat AddHours wordt gebruikt met een negatieve waarde om het zoekvenster een uur terug te zetten.

 Get-MessageTrackingLog -Sender [email protected] -Server (Get-Date).AddHours(-1)

Export naar CSV

Als u een Excel-zwarte band bent, is het mogelijk om de zoekresultaten te exporteren naar een CSV-bestand voor latere analyse in Excel.

 Get-MessageTrackingLog | Export-CSV –path C:\temp\tracking.csv –NoTypeInformation
 Get-MessageTrackingLog | select @{Name="RecipientsXX";Expression={$_.Recipients}}

Meten uitvoeringstijd

 Measure-Command {Get-TransportServer | Get-MessageTrackingLog -MessageSubject "zorg" -ResultSize unlimited}

Zoek GUI Voor Exchange 2013/2016

Zoals opgemerkt aan het begin van deze post is er niet langer een Message Tracking log Explorer tool in Exchange 2013 of 2016. Wat we wel kunnen doen is de gewenste zoekopdracht maken met behulp van een van de bovenstaande voorbeelden en vervolgens de native PowerShell-functionaliteit gebruiken om de resultaten weer te geven in een UI.

Dit is de Out-GridView die al vele, vele, vele jaren aanwezig is in PowerShell.

Als eenvoudig voorbeeld:

Get-MessageTrackingLog | Out-GridView

Exchange 2016 Get-MessageTrackingLog With Out-GridView

Articles

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.