# Checks local disks for errors reported in event viewer within the last 24 hours $ErrorActionPreference= 'silentlycontinue' $TimeSpan = (Get-Date) - (New-TimeSpan -Day 1) if (Get-WinEvent -FilterHashtable @{LogName='system';ID='11','9','15','52','129','7','98';Level=2,3;ProviderName='*disk*','*storsvc*','*ntfs*';StartTime=$TimeSpan}) { Write-Output "Disk errors detected please investigate" Get-WinEvent -FilterHashtable @{LogName='system';ID='11','9','15','52','129','7','98';Level=2,3;ProviderName='*disk*','*storsvc*','*ntfs*';StartTime=$TimeSpan} exit 1 } else { Write-Output "Disks are Healthy" exit 0 } Exit $LASTEXITCODE