Menü Kapat

Exchange yönetmek zordur, herşeyi ecp arayüzünden yapamazsınız bazen bir takım scriptlere ihtiyaç duyarsınız.

bu konuda iyi iş gören 2 tane script var.

Test-ExchangeServerHealth.ps1

Exchange 2010/2013/2016 için geliştirilmiş olan bu health script sunucunuzun sağlık durumu hakkında size özet bilgiler sunuyor. Mail Database lerinizin sağlık durumu , DAG kullanıyorsanız bunların durumu, servislerin durumu vb bir çok bilgi veriyor. ilgili kaynağa aşağıdaki linkten ulaşabilirsiniz.

https://github.com/cunninghamp/Test-ExchangeServerHealth.ps1

Örnek komutlar ;

.\Test-ExchangeServerHealth.ps1

Organizasyonunuzdaki tüm sunucuları kontrol eder ve rapor sunar

.\Test-ExchangeServerHealth.ps1 -Server ExchOne

bu komut ile de sadece ExchOne isimli sunucunun sağlık durumu hakkında çıktıları Shell consol üzerine yazdırır.

.\Test-ExchangeServerHealth.ps1 -ReportMode -SendEmail

en sevdiğim kullanım yöntemi -SendEmail parametresi ile raporun çıktsını mail olarak kendinize gönderebilirsiniz. bunun için sadece scriptin içerisindeki aşağıdaki paratmetreleri güncellemeniz yeterlidir.

$smtpsettings = @{
To = “ferdiirmak@benimsunucum.com”
From = “exchangeserver@benimsunucum.com”
Subject = “$reportemailsubject – $now”
SmtpServer = “mail.benimsunucum.com”
}

yukarıdaki bu script çok başarılı ama bir eksiği var Exchange 2019 ve üzerinde çalışmıyor.

HealthChecker

Exchange 2019 ve üzeri için aşağıdaki daha gelişmiş özelliklere sahip olan HealthChecker scriptini kullanabilirsiniz.

Microsoft un GitHub ındaki https://microsoft.github.io/CSS-Exchange/Diagnostics/HealthChecker/

Örnekler :

This cmdlet with run Health Checker Script by default and run against the local server.

PS C:\> .\HealthChecker.ps1

This cmdlet will run the Health Checker Script against the specified server.

PS C:\> .\HealthChecker.ps1 -Server EXCH1

This cmdlet will run the Health Checker Script against a list of servers.

PS C:\> .\HealthChecker.ps1 -Server EXCH1,EXCH2,EXCH3

This cmdlet will build the HTML report for all the XML files located in the same location as the Health Checker Script.

PS C:\> .\HealthChecker.ps1 -BuildHtmlServersReport

This cmdlet will build the HTML report for all the XML files located in the directory specified in the XMLDirectoryPath Parameter.

PS C:\> .\HealthChecker.ps1 -BuildHtmlServersReport -XMLDirectoryPath C:\Location

This cmdlet will run the Health Checker Load Balancing Report for all the Exchange 2013+ CAS (Front End connections only) and MBX servers (BackEnd connections) in the Organization.

PS C:\> .\HealthChecker.ps1 -LoadBalancingReport

This cmdlet will run the Health Checker Load Balancing Report for these Servers EXCH1, EXCH2, and EXCH3 CAS (Front End connections) and MBX (BackEnd Connections)

PS C:\> .\HealthChecker.ps1 -LoadBalancingReport -ServerList EXCH1,EXCH2,EXCH3

This cmdlet will run the Health Checker Load Balancing Report for the Exchange 2013+ servers in the site SiteA.

PS C:\> .\HealthChecker.ps1 -LoadBalancingReport -SiteName SiteA

This cmdlet will run the Health Checker Mailbox Report against the Server EXCH1

PS C:\> .\HealthChecker.ps1 -MailboxReport -Server EXCH1

This cmdlet will run the Health Checker against all your Exchange Servers, then run the HTML report and open it.

PS C:\> Get-ExchangeServer | ?{$_.AdminDisplayVersion -Match "^Version 15"} | .\HealthChecker.ps1; .\HealthChecker.ps1 -BuildHtmlServersReport; .\ExchangeAllServersReport.html

This cmdlet will run Health Checker Vulnerability Report feature against all your Exchange Servers. Then Export out the data to a json file.

PS C:\> .\HealthChecker.ps1 -VulnerabilityReport