# Nagios Exchange 2010 DAG Replication Monitoring Script # Author: Andy Grogan # Version 1.0 # www.telnetport25.com # ---------------------------------------- # Compatibility: # ---------------------------------------- # Nagios Version: 3.x # Exchange Version: 2010 # Powershell Version: 2.0 # NSClient++ Version: 3.x # ---------------------------------------- Add-PSSnapin Microsoft.Exchange.Management.PowerShell.E2010 $DagMembers = Get-DatabaseAvailabilityGroup | select Servers [array]$Servers = $DagMembers.Servers foreach($Entry in $Servers){ $replHealthResult = Test-ReplicationHealth $Entry.Name foreach($element in $replHealthResult){ if($element.Result.toString() -ne "Passed"){ $ReturnCode = $element.Result.toString() $ReturnError = $element.Error.toString() $Output += "CRITICAL: " + $Entry.Name + " " + $ReturnCode + " " + $ReturnError $statFlag = 1 }else{ $Res = "OK: Replication " + $Entry.Name $Output += $Res + " " } } } Write-Host $Output if($statFlag -eq 1){ exit 2 }else{ exit 0 }