Monitor the percentage free space and number of free MBytes remaining on a logical disk. Only when both the low percentage free space threshold and low number of free MBytes threshold is the disk flagged as having low disk free space.
The amount of free disk space on the logical disk volume has exceeded the threshold. System performance may be adversely affected and the ability to add or modify existing files on the logical disk volume may not be possible until additional free space is made available.
To increase the amount of available disk space, do one or more of the following:
Run Disk Cleanup to gain more free space on the disk.
Back up and remove files, or delete unnecessary files from the disk.
Move files to another disk or to offline storage.
Purchase additional storage or switch to a larger disk.
To view recent disk space history you can use the following view:
Start Disk Capacity View
The Logical Disk Free Space monitoring routine is a high configurable solution that enables Operators to set varying threshold values for system and non-system logical disk volumes. In addition separate threshold values can be set for Warning and Error states.
Since logical disk volumes may vary in size from a few gigabytes to many terabytes or more the Logical Disk Free Space monitoring routine requires that an Operator indicate both the Megabyte and Percentage based threshold values that must be passed before the Warning and Error thresholds reached. This means that in order for the threshold to be reached both the Megabyte and Percentage based threshold values for the System or Non-System Drive must be breached.
The default threshold values for the Logical Disk Free Space monitoring routine include:
Interval Seconds: How frequently (in seconds) the value should be sampled. The default value is 3600
Warning MBytes Threshold for System Drive: The default value is 500
Warning % Threshold for System Drives: The default value is 10
Error MBytes Threshold for System Drives: The default value is 300
Error % Threshold for System Drives: The default value is 5
Warning threshold in MBytes for the non system drives: The default value is 2000
Warning % Threshold for Non-System Drives: The default value is 10
Error threshold in MBytes for the non system drives: The default value is 1000
Error % Threshold for Non-System Drives: The default value is 5
Timeout Seconds: Number of seconds that the script is allowed to run before it will be forced to stop. The default value is 360.
Debug Flag: This setting enables the script to log different events at running time. The default value is false.
Please note that Overrides can be used to change any of the threshold values that are defined above. In addition these thresholds can be applied to all logical disk volume instances in the management group or if needed separate threshold values can be defined for specific logical disk volume instances.
Target | Microsoft.Windows.Server.2008.LogicalDisk | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Windows.Server.2008.Legacy.LogicalDisk.FreeSpace.Monitortype | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.Windows.Server.2008.Legacy.LogicalDisk.FreeSpace.Monitor" Accessibility="Public" Enabled="true" Target="Server2008!Microsoft.Windows.Server.2008.LogicalDisk" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.Windows.Server.2008.Legacy.LogicalDisk.FreeSpace.Monitortype" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.2008.Legacy.LogicalDisk.FreeSpace.Monitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="Windows!Microsoft.Windows.LogicalDevice"]/DeviceID$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter2>
<AlertParameter3>$Data/Context/Property[@Name='PctFree']$</AlertParameter3>
<AlertParameter4>$Data/Context/Property[@Name='MbFree']$</AlertParameter4>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UnderWarningThresholds" MonitorTypeStateID="UnderWarningThresholds" HealthState="Success"/>
<OperationalState ID="OverWarningUnderErrorThresholds" MonitorTypeStateID="OverWarningUnderErrorThresholds" HealthState="Warning"/>
<OperationalState ID="OverErrorThresholds" MonitorTypeStateID="OverErrorThresholds" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>3600</IntervalSeconds>
<TargetComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</TargetComputerName>
<SystemDriveWarningMBytesThreshold>500</SystemDriveWarningMBytesThreshold>
<SystemDriveWarningPercentThreshold>10</SystemDriveWarningPercentThreshold>
<SystemDriveErrorMBytesThreshold>300</SystemDriveErrorMBytesThreshold>
<SystemDriveErrorPercentThreshold>5</SystemDriveErrorPercentThreshold>
<NonSystemDriveWarningMBytesThreshold>2000</NonSystemDriveWarningMBytesThreshold>
<NonSystemDriveWarningPercentThreshold>10</NonSystemDriveWarningPercentThreshold>
<NonSystemDriveErrorMBytesThreshold>1000</NonSystemDriveErrorMBytesThreshold>
<NonSystemDriveErrorPercentThreshold>5</NonSystemDriveErrorPercentThreshold>
<DiskLabel>$Target/Property[Type="Windows!Microsoft.Windows.LogicalDevice"]/DeviceID$</DiskLabel>
<TimeoutSeconds>360</TimeoutSeconds>
<DebugFlag>false</DebugFlag>
</Configuration>
</UnitMonitor>