Here is an interesting PowerShell cmdlet to check your Exchange Servers’ health.
Topics for Exchange 2010 Test-ServerHealth
- Test-ServerHealth Credentials
- Research Parameters for Test-ServerHealth with Get-Command
- More Exchange PowerShell Cmdlets
I cover PowerShell basics elsewhere on the site and I am assuming on this page that you have a working knowledge of the cmdlets.
Before you run Test-ServerHealth I suggest that you logon with an account that has been delegated the Exchange Server Administrator role and is a member of the local Administrators group for the target server.
# Simple PowerShell Example:
Example Results: ServicesRunning
Mailbox Role e.g. MSExchangeSA
Client Access e.g. MSExchangeADTopology
These are just examples, the real results list all the Exchange Services and show which are running and which are not.
Note 1: You can change the credentials with the parameters -AdCredentials or -ExchangeCredentials.
Get-Help Test-ServerHealth -full
Note 2: I found that -DomainController and -Server are the most useful parameters. For safety try simulation with: -WhatIf.
Note 3: Test-ServerHealth is very like the Exchange Best Practice Analyzer (ExBPAcmd).
Note 4: PowerShell also has a sister command with similar spelling called, Test-SystemHealth.
Here is a free tool to monitor your Exchange Server. Download and install the utility, then inspect your mail queues, monitor the Exchange server’s memory, confirm there is enough disk space, and check the CPU utilization.
This is the real deal – there is no catch. SolarWinds provides this fully-functioning freebie, as part of their commitment to supporting the network management community.
PowerShell Pre-requisites and Checklist
In the case of Windows 7 and later, you don’t need to download any extra files, just: ‘Add Feature’ –> Windows PowerShell. However, for older operating systems, there are different versions of PowerShell for XP, Windows Server 2003 and Vista. For such legacy systems only, you need to download PowerShell from Microsoft’s site.
Once you have installed PowerShell 2.0 or later, I recommend choosing the ISE (Integrated Scripting Engine) version, it will save buying a text editor.
Summary of PowerShell Exchange Test-ServerHealth
This is an interesting PowerShell cmdlet to check that the vital services are actually running on your Exchange 2010 server.
If you like this page then please share it with your friends
See more Microsoft PowerShell tutorials:
Please email me if you have a better script examples. Also please report any factual mistakes, grammatical errors or broken links, I will be happy to correct the fault.