Email is the lifeline for almost every business in this world. When email is down businesses cannot communicate. There is loss of productivity, which could lead to dollars lost, which in the end is obviously not good. That said, the key takeaway is that a healthy exchange environment means less issues, in turn meaning less headaches.
Daily monitoring of Exchange involves many aspects of the environment and the surrounding infrastructure. Simply turning on monitoring will not get you very far. First question you should ask yourself is “What do I need to monitor?” Not knowing what to look out for could inundate you with alerts which is not going to be helpful for you. Let’s take a look at some of the key components to monitor with running Exchange.
Performance Monitoring
Performance monitoring is vital because we need to know how the servers are performing. When the servers are slow that could impact the user experience. If you have not heard, users absolutely hate when their email is slow.
Exchange has a built-in mechanism called back pressure. In a nut shell, Back Pressure is like the safety belt for exchange. When Exchange feels there is performance degradation that meets certain thresholds it will slow down or stop certain services to prevent itself from collapsing. However, do you ever really want to reach that point when exchange is pulling the safety belt on itself? You want to be ahead of the game by monitoring those key components.
Exchange server performance counters
- Memory usage
- MemoryAvailable Mbytes (MB)
- MemoryPages/sec
- MemoryPool Nonpaged Bytes
- MemoryPool Paged Bytes & MemoryFree System Page Table Entries
- RPC Operations
- MSExchangeISRPC Averaged Latency – below 50ms
- DSAccess
- MSExchangeDSAccess Domain ControllersLDAP Read Time - below 50ms spikes no higher than 100ms
- MSExchangeDSAccess Domain ControllersLDAP Search below 50ms spikes no higher than 100ms spikes no higher than 100ms
- Disk-
- Database disks
- PhysicalDiskAverage Disk sec/Read - less than 20ms
- PhysicalDiskAverage Disk sec/Write - less than 20ms
- Transaction Logs disk
- PhysicalDiskAverage Disk sec/Read - less than 5ms , spikes no higher than 50
- PhysicalDiskAverage Disk sec/Write - less than 10ms, spike no higher than 50ms
- Log buffer
- DatabaseLog Record Stalls/sec – below 10 per sec no higher than 100 per sec
- Processor -
- Processor% Processor Time (_Total) , ideally should be less than 90%
You also want to monitor your Transport hub queues. Typical causes of transport hub queues being backed up is a mail storm. When the Transport hubs are backed up it can cause performance issues on the server and cause emails to be delayed. In addition to the queues you should also monitor Exchange mailbox health, which includes the mailbox replication and database copy status.
Exchange Queues
- Total Queue count
- Total Queue length
- Total Queue size
- Where is the back up? What is causing it?
Exchange Mailbox Health
- Test-MRSHealth – Mailbox Replication Service responsible for processing mailbox moves
- Test-ReplicationHealth – test overall health and replay stats for DAG
- Get-MailboxDatabaseCopyStatus – test to review health of mailbox database copies
Monitoring Beyond the Exchange Environment
When your monitoring exchange not only are you mounting for performance, but you also want to monitor outside factors such as network, active directory
®, and any external connections, like mobile device management. Mobile devices can cause outages by impacting the CAS servers. In the past, there were certain versions of iOS that had caused issues with the CAS servers, so it’s not a bad idea to keep an eye on any potential new bugs that may lurk again.
Mobile Device Tests and Monitoring
- Test ActiveSyncConnectivity – tests your ActiveSync connections
- Get-ActiveSyncDevice - reports on all ActiveSync devices
- Get-ActiveSyncDeviceStatistics – reports on all devices configured to a mailbox and statistics for those devices
To run Exchange, you need a network, yes routers and switches can impact Exchange. You also need an Active Directory. This is something that I will touch on in a future post. Without either of these you cannot have Exchange servers running, so it’s probably a good idea to keep an eye on them too. As the Exchange admin, you don’t need to be aware of every single network event, but a simple alert of a network outage or blip can be helpful. Sometimes all it takes is a slight blip in the network and it could have an affect on your Exchange DAG by causing databases to fail over.
Preventing Bigger Headaches
Exchange monitoring is a headache and can be time consuming, but if you know what you are looking for and have the right tools in hand it is not so bad. Some free common tools available to monitor Exchange are:
- Performance Monitor
- Exchange Best Practices Analyzer
- Remote Connectivity Analyzer