Skip to content

windows softraid monitor

2019.12.19 05:34

WHRIA 조회 수:82

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

}

번호 제목 글쓴이 날짜 조회 수
1609 참새 WHRIA 2007.06.20 6401
1608 !! Academic Award of CLS !! WHRIA 2007.08.04 6367
1607 My parents is away on a journey WHRIA 2007.08.19 6363
1606 워드에서 페이지 번호 매기기 han 2006.04.03 6334
1605 어디까지 이야기해야 할까? WHRIA 2007.08.28 6319
1604 Last day WHRIA 2007.08.05 6282
1603 공유기 성능 비교 차트 file WHRIA 2013.02.24 6240
1602 whria.net 의 홈페이지 배경 음악 모음 file WHRIA 2005.11.10 6188
1601 Firefox : Session restore WHRIA 2007.08.12 6182
1600 멋지네요... 석근이친구... 2000.06.09 6180
1599 hooking 관련 문서들 file WHRIA 2013.04.10 6168
1598 휴.. 졸리다. 졸려 WHRIA 2007.06.27 6167
1597 어제 PRK 하다. WHRIA 2007.07.27 6164
1596 그래 니가 일등 먹어라. 한정규 2000.06.10 6153
1595 오늘 내일 han 2007.07.22 6104

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소