Working in support at Microsoft, you get to deal with a lot of organizations who are migrating to Exchange Online. This type of migration dramatically changes how web traffic flows in the organization as the traffic moves away from Exchange on the Local Area Network to servers hosted by Microsoft in a Microsoft Data Center, essentially a remote internet location.
We spend plenty of time troubleshooting Outlook when a customer has difficulties connecting to their Office 365 mailbox. We troubleshoot other connectivity issues too of course, and we continually use tools such as The Support and Recovery Assistant (SARA), (top support tip: particularly useful to detect client based issues is the Collect Information about my Outlook configuration option in SARA) Outlook ETL files (which can only be viewed by Microsoft support), and Fiddler traces to see the conversation between the Outlook client and the service – whether that’s Exchange Online, some other Office 365 service, or an Authentication or Federation provider.
Since we spent so much time working with Fiddler, we wanted to put together an extension which brings our knowledge of the issues we see on a daily basis directly into Fiddler to assist with troubleshooting Outlook and Exchange Online. Whether you are in contact with Microsoft support or otherwise, we’re putting it out there so you can use it too!
What does the extension do, or add?
- It colourizes sessions in the session list according to any known error condition.
- It adds additional columns added to highlight particularly useful information:
- Session total Elapsed time.
- Type of Response server that responded to the session request.
- Exchange type a calculated field based on session characteristics.
- Authentication giving you information about the session Authentication.
- Host IP address of the server which responded to the session request.
- It adds an Exchange Online inspector tab.
- It adds an Office365 Auth inspector tab.
- It adds a menu to control extension features.
- Don’t want to see one or more of the columns? Simply turn them off and restart Fiddler to see the changes.
- We added an update checking feature. Making sure anyone using the extension gets any available extension updates as we update the session logic rule set.
What kind of scenarios can the extension help me troubleshoot?
- See if the Outlook client is Basic or Modern Authentication capable.
- See if Exchange Online Basic or Modern Authentication is enabled.
- SAML response parser to validate UserPrincipalName, ImmutableID and signing certificate used for Authentication in an Outlook session.
- See if Exchange on your network redirects to Exchange Online.
- See any Autodiscover responses from a server not running IIS; Apache, for example.
- Network Connectivity
- Web proxy or other device blocking Outlook traffic from reaching the internet and Office 365 / Exchange Online.
- Outlook cannot connect to an Exchange Online mailbox.
- Outlook cannot communicate with an Exchange server - either on your network or in Exchange Online.
- Performance information
- Check the length of time sessions take to complete.
- Check the length of time the Exchange Online server took to service the request; 'Server Think Time'.
- Check the length of time it took to send the response back to Fiddler and for Fiddler to relay the response back to the client app (Outlook).
- OWA cannot connect to an Exchange Online mailbox.
- Outlook or OWA cannot perform a specific function with the mailbox.
- Exchange Free/Busy and other EWS calls.
What does it look like?
Here’s an example of the session coloring:
Exchange Online inspector tab:
Exchange Online inspector tab with a HTTP 503 Federation service unavailable scenario:
Office 365 Auth tab with authentication summary:
Office 365 Authentication tab with SAML response parser:
Extension menu to control features:
Where to get it and how to provide feedback?
Want to try this out for yourself? If so, you can download the extension from https://aka.ms/EXOFiddlerExtension
To install it the following pre-requisites need to be met:
- Fiddler must first be installed. See https://aka.ms/FiddlerDownload
- .NetFramework 4.6 or newer See this.
- Start the Fiddler application at least once before installing any extension to initialize Fiddler properly.
If you have any issues, feedback or questions with the extension please raise them at https://aka.ms/EXOFiddlerExtensionIssues - we’re listening and want to help if we can.
For additional information on the extension see the extension wiki at https://aka.ms/EXOFiddlerExtensionWiki.
Thanks for using the extension and let us know how it works for you. We’d love to hear if it helps you solve any particularly difficult problems. All the best.