A while ago I wrote a post about Troubleshooting calendar items. Since then our capabilities improved as Microsoft added more functionality to Cmdlets and I enhanced also my own script (description can be found here).
The intention of this post is to give you a deep dive of advanced troubleshooting similar to my Get-ExchangeDiagnosticInfo post.
The content is as follows:
Recently we saw an increasing number of tickets where user complained about issues retrieving Free/Busy data while scheduling a meeting or for shared calendar.
When trying to schedule a meeting you would see only hash marks
No F/B data in Scheduling Assistant
I was just made aware of a HP specific setting which has a huge impact on performance. But before you start panic, have a look at the conditions:
- you’re running Proliant Gen9 Servers
- these servers are equipped with Intel Xeon E5 2600v3 and higher processors
- you have the default setting for NUMA Group Size Optimization
If you’re not matching these conditions, you can stop reading and relax. If not….you might want to continue reading.
As mentioned before it affects not only Exchange. Credit goes to Nicholas, who highlighted the following KB for Lync/SfB:
Bug Check 0x133 DPC_WATCHDOG_VIOLATION error on Lync/Skype for Business Edge server
Another PFE made me aware that the script HealthChecker.ps1 is checking the setting by comparing the values EnvProcessorCount and NumberOfLogicalProcessors
With Exchange 2016 a huge improvement in regards of document collaboration with OneDrive for Business was introduced when you have a Hybrid configured.
You can read more about it here:
When I introduced Exchange 2016, I was more than happy to configure and make this feature available to my end-users. But after I run through the prerequisites and steps, I wasn’t able to get the option in OWA and with Outlook I received the following error:
The same happened when I was using Outlook for Mac. As different clients, protocols and servers where affected, I assumed a general issue and started troubleshooting.
Over the last months a lot of changes needed to be addressed. The script was intended to extract data from the IIS logs. With PowerShell in combination with LogParser it did a great job. But different versions of Exchange, changed infrastructure and multiple versions of Exchange ActiveSync protocol demanded an update to fulfill these needs.
The latest version focused on code improvement and added support for the new version of Exchange ActiveSync protocol v16.1 .
Currently I’m upgrading an Exchange 2013 environment to Exchange 2016. In general this upgrade runs very smoothly and is almost seemless for user. It’s a complete different story when you’re coming from Exchange 2010.
So far I got only positive feedback and no issue were reported. Until a bunch of shared mailbox have been migrated.
Users complained they cannot access these mailbox anymore. First I couldn’t reproduce the issue, until I got another important detail:
All these user are using Outlook for Mac and indeed I could reproduce the behavior.
This issue is fixed in version 15.38 (170815) of the Insider Fast Build as of August, 16:
In a previous post here, I wrote about a few basic commands, which are useful to quickly gather information about transport component of an Exchange server.
In this post I want to give you a deep dive about it and how you can explore what the CmdLet can do for you as it evolves in each Exchange version and can be very useful.