Skip to content

windows softraid monitor

2019.12.19 05:34

WHRIA 조회 수:66

powershell script 고 인터넷에 있는것을 약간 수정함

 



 

 


# A simple PowerShell script for retrieving the RAID status of volumes with help of diskpart.

# The nicer solution would be using WMI (which does not contain the RAID status in the Status field of Win32_DiskDrive, Win32_LogicalDisk or Win32_Volume for unknown reason)

# or using the new PowerShell API introduced with Windows 8 (wrong target system as our customer uses a Windows 7 architecture).

# diskpart requires administrative privileges so this script must be executed under an administrative account if it is executed standalone.

# check_mk has this privileges and therefore this script must only be copied to your check_mk/plugins directory and you are done.

#

# Christopher Klein <ckl[at]neos-it[dot]de>

# This script is distributed under the GPL v2 license.

 

#Volumes:

chcp 437

$dpV = "list volume" | diskpart | ? { $_ -match "^  [^-]" }

foreach ($row in $dpV) {

$OutString = $OutString+$row+"`r`n"

# skip first line

if (!$row.Contains("Volume ###")) {

# best match RegExp from http://www.eventlogblog.com/blog/2012/02/how-to-make-the-windows-softwa.html

if ($row -match "\s\s(Volume\s\d)\s+([A-Z])\s+(.*)\s\s(NTFS|FAT)\s+(Mirror|RAID-5|Stripe|Spiegel|Spiegelung|Übergreifend|Spanned)\s+(\d+)\s+(..)\s\s([A-Za-z]*\s?[A-Za-z]*)(\s\s)*.*")  {

$disk = $matches[2] 

# 0 = OK, 1 = WARNING, 2 = CRITICAL

$statusCode = 1

$status = "WARNING"

$text = "Could not parse line: $row"

$line = $row

if ($line -match "Fehlerfre |OK|Healthy") {

$statusText = "is healthy"

$statusCode = 0

$status = "OK"

}

elseif ($line -match "Rebuild") {

$statusText = "is rebuilding"

$statusCode = 1

$VolumeErrorFound = 1

}

elseif ($line -match "Failed|At Risk|Fehlerhaf") {

$statusText = "failed"

$statusCode = 2

$status = "CRITICAL"

$VolumeErrorFound = 1

}

echo "$statusCode microsoft_software_raid - $status - Software RAID on disk ${disk}:\ $statusText"

}

}

}

$OutString = $OutString+"`r`n"

#Disk:

$dpD = "list disk" | diskpart | ? { $_ -match "^  [^-]" }

foreach ($row in $dpD) {

# skip first line

if (!$row.Contains("Volume ###")) {

$OutString = $OutString+$row+"`r`n"

# best match RegExp from http://www.eventlogblog.com/blog/2012/02/how-to-make-the-windows-softwa.html

if ($row -match "Errors") {

#echo "$row"

$DiskErrorFound = 1

}

}

}

if (($DiskErrorFound) -Or ($VolumeErrorFound)) {

$SMTPServer = "127.0.0.1"

$SMTPPort = 25

$EmailTo = "@@@"

$EmailFrom = "@@@"

$EmailSubject = "Disk or Volume Error on $env:computername"

$EmailBody = $OutString

Send-MailMessage -To $EmailTo -From $EmailFrom -Subject $EmailSubject -Body $EmailBody -SmtpServer $SMTPServer -Port $SMTPPort

}

번호 제목 글쓴이 날짜 조회 수
1716 mAP 계산법 WHRIA 2019.02.24 45558
1715 epitope spreading han 2006.05.09 40968
1714 encfs WHRIA 2020.05.17 33699
1713 Heinrich Law (1:29:300 Law) WHRIA 2007.08.12 24963
1712 일본 주소 [2] WHRIA 2008.06.28 24013
1711 사주팔자 프로그램 file 한승석 2003.02.16 20304
1710 simple adblock file WHRIA 2012.04.13 18071
1709 도란사민 WHRIA 2011.04.19 18067
1708 탤런트 이윤지씨와 함께 file WHRIA 2010.02.04 17006
1707 penicillin han 2003.12.10 15672
1706 SSH tunnel WHRIA 2007.10.01 15078
1705 geexbox [1] han 2006.12.01 14601
1704 아이피부과 개원 WHRIA 2010.01.18 14407
1703 세무회계 WHRIA 2010.01.31 14380
1702 증명사진 WHRIA 2010.03.14 14308

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소