Page 1 of 1

Windows Disk Check

Posted: Tue Oct 08, 2019 3:02 pm
by emartine
Is it possible for Windows to have a single client check for all disks with one threshold and also specify another threshold for specific disks in the same check.?

Re: Windows Disk Check

Posted: Wed Oct 09, 2019 10:33 am
by mbellerue
This sounds quite a bit like a custom check. Let me make sure I've got this right.

Say you have a Windows server with C:, D:, E:, and F: drives. You want to have one check that will check all of those drives for a high watermark, say warning 90, critical 95. But E: and F: are special, we need to make sure there's room there for a large flood of data should it come in. So their levels are set to warning 75, critical 80. Does that sound about right?

Re: Windows Disk Check

Posted: Fri Oct 11, 2019 1:36 pm
by emartine
Yes.

Re: Windows Disk Check

Posted: Fri Oct 11, 2019 2:52 pm
by mbellerue
I was thinking this would be a custom check, but it looks like the check_disk plugin has an example for this.
check_disk -w 100 -c 50 -C -w 1000 -c 500 -p /foo -C -w 5% -c 3% -p /bar
Checks /foo for 1000M/500M and /bar for 5/3%. All remaining volumes use 100M/50M
Would this work for your needs?

Re: Windows Disk Check

Posted: Fri Oct 11, 2019 4:14 pm
by emartine
Well I need the Windows version of that.


I know right now I call
/usr/local/nagios/libexec/check_nrpe -H 192.168.x.x -c alias_disk

Which is calling
alias_disk = CheckDriveSize MinWarn=10% MinCrit=5% CheckAll FilterType=FIXED

This would do it for all fixed disk but if I have disks that are beyond this threshold... then I am looking for not only doing this but also specifying disks indivually with their own threshold .

Re: Windows Disk Check

Posted: Mon Oct 14, 2019 9:47 am
by mbellerue
I don't know that CheckDriveSize can do this in a single command. Here are all of the options for it.

Code: Select all

CheckDriveSize help
L        cli OK:   help                 Show help screen (this screen)
  help-pb              Show help screen as a protocol buffer payload
  show-default         Show default values for a given command
  help-short           Show help screen (short format).
  CheckAll=ARG         Checks all drives.
                       Default value: CheckAll=true
  CheckAllOthers=ARG   Checks all drives turns the drive option into an exclude
                       option.
                       Default value: CheckAllOthers=true
  Drive=ARG            The drives to check
  FilterType=ARG       The type of drives to check fixed, remote, cdrom,
                       ramdisk, removable
  perf-unit=ARG        Force performance data to use a given unit prevents
                       scaling which can cause problems over time in some
                       graphing solutions.
  ShowAll=ARG          Configures display format (if set shows all items not
                       only failures, if set to long shows all cores).
                       Default value: ShowAll=short
  MaxWarn=ARG          Maximum value before a warning is returned.
  MaxCrit=ARG          Maximum value before a critical is returned.
  MinWarn=ARG          Minimum value before a warning is returned.
  MinCrit=ARG          Minimum value before a critical is returned.
  MaxWarnFree=ARG      Maximum value before a warning is returned.
  MaxCritFree=ARG      Maximum value before a critical is returned.
  MinWarnFree=ARG      Minimum value before a warning is returned.
  MinCritFree=ARG      Minimum value before a critical is returned.
  MaxWarnUsed=ARG      Maximum value before a warning is returned.
  MaxCritUsed=ARG      Maximum value before a critical is returned.
  MinWarnUsed=ARG      Minimum value before a warning is returned.
  MinCritUsed=ARG      Minimum value before a critical is returned.
L        cli  Performance data:
You could do most of what you're looking to do, but I don't think it can be done in a single check without it being a custom script.