Partager via


Getting the Health of an Exchange Server

Managed Availability in Exchange Server 2013 polls every server for hundreds of things a second. Most times if something is wrong, it will be fixed automatically. However, there are cases that Managed Availability cannot fix on its own. This post will discuss how you can use Get-HealthReport and Get-ServerHealth to find out what is wrong on a server. You may want to do this after you get an alert for some aspect of a server and want to see if there is anything else amiss.

Server Health Summary

Start with Get-HealthReport to find out the status of every Health Set on the server:

Get-HealthReport -Identity Server1

Server State HealthSet AlertValue LastTransitionTime MonitorCount
------ ----- --------- ---------- ------------------ ------------
Server1 NotApplicable AD Healthy 5/21/2013 12:23 14
Server1 NotApplicable ECP Unhealthy 5/26/2013 15:40 2
Server1 NotApplicable EventAssistants Healthy 5/29/2013 17:51 40
Server1 NotApplicable Monitoring Healthy 5/29/2013 17:21 9

You can see that the Exchange Control Panel Health Set is Unhealthy. You can also see that this Health Set relies on two Monitors. Let's find out if both of those Monitors are unhealthy.

Health of Each Monitor of a Health Set

Now, use Get-ServerHealth to find out how which Monitors of the Health Set are Unhealthy:

Get-ServerHealth -Identity Server1 -HealthSet ECP

Server State Name TargetResource HealthSetName AlertValue ServerComponent
------ ----- ---- -------------- ------------- ---------- ----------
Server1 NotApplicable EacSelfTestMonitor ECP Unhealthy None
Server1 NotApplicable EacDeepTestMonitor ECP Unhealthy None

Both Monitors for this Health Set are Unhealthy. If you pipe this command to Format-List, you will get some more details about these Monitors.

Troubleshooting Monitors

Most Monitors in Exchange are one of these four types:

The EacSelfTestMonitor Probes along the "1" path, while the EacDeepTestMonitor Probes along the "4" path. Since both are Unhealthy, you can know that the problem lies on the Mailbox Role in either the Protocol or Store. It could also be a problem with a dependency, such as Active Directory. This is likely if multiple Health Sets are Unhealthy. Troubleshooting ECP Health Set is a good article to help diagnose and fix the problem simulated here.

 -ajacks