This blog will explain how to see email logs for Exchange server. Recently I have been having issues with not receiving emails to some of my email addresses. I am disappointed to find out that there is no easy to way to see the email logs like cPanel. Instead, the only way to see the email logs is by using Windows PowerShell.

Steps
Firstly search for PowerShell right-click and click ‘run as administrator’. Then input following commands:
Install-module exchangeonlinemanagement
Input “y” and press enter
Set-ExecutionPolicy RemoteSigned
Input “y” and press enter
connect-exchangeonline
This command is used to connect to the Exchange Server. You will then be prompted to login, please use an account with admin privilege. You should be able to see something like the following picture.

After you have logged in, now enter the following commands:
Get-MessageTrace -StartDate (Get-Date).Adddays(-30) -EndDate (Get-Date) -Status Failed
NOTE: You may get error saying that you can’t choose date for more than previous 10 days. I am not sure why its showing this error. If you get this error just change the number 30 in the code to 10.
You can choose from the following status:
- Failed: Message delivery was attempted, and it failed or the message was filtered as spam or malware, or by transport rules.
- Pending: Message delivery is underway or was deferred and is being retried.
- Delivered: The message was delivered to its destination.
You should be able to see something like the following picture.

You can try inbound email test using this tool: Microsoft Remote Connectivity Analyzer
If you would like to export the report of the failed/bounced emails, refer to the reference list.
References