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

}

번호 제목 글쓴이 날짜 조회 수
96 버릴 것은 쓰레기통에 WHRIA 2007.09.30 8393
95 convert to wav WHRIA 2007.08.12 8397
94 yahoo 데이터 가져오기 WHRIA 2012.04.25 8423
93 리눅스는 망했다. WHRIA 2012.12.25 8437
92 Medieye Server 이전 WHRIA 2007.10.15 8477
91 하드 디스크 교체 WHRIA 2008.07.20 8502
90 skin tone file WHRIA 2008.10.18 8507
89 오빠 낭~~*^^* KINOKO[[승욱이별명.. 2000.06.06 8513
88 MedicalPhoto Release 1.0.7 WHRIA 2008.09.21 8529
87 주소 WHRIA 2011.04.20 8533
86 Choose substance before appearance WHRIA 2007.08.28 8569
85 MedicalPhoto Release 1.0.6 WHRIA 2008.06.19 8569
84 아산 사회 복지 재단 WHRIA 2009.02.25 8593
83 ZeroBoard XE WHRIA 2007.08.20 8602
82 서버 이전 WHRIA 2012.10.03 8606

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소