This monitor runs on a periodic basis (Every Saturday at 3 a.m. by default) to check the fragmentation levels of all logical drives. If fragmentation levels are found to be above threshold then by default the state of the monitor will change to "Warning" and an alert will be generated. There is a recovery named "Logical Disk Defragmentation" targeted to this monitor, which is disabled by default. If the recovery is enabled then the state change will automatically kick off a task to defragment the logical drive.
This monitor runs on a periodic basis (Every Saturday at 3 a.m. by default) to check the fragmentation levels of all logical drives. If fragmentation levels are found to be above threshold then by default the state of the monitor will change to "Warning" and an alert will be generated. There is a recovery named "Logical Disk Defragmentation" targeted to this monitor, which is disabled by default. If the recovery is enabled then the state change will automatically kick off a task to defragment the logical drive.
This monitor has the following overridable parameters, in addition to what is generically available for all monitors:
Use OS Recommendation : This parameter determines whether the fragmentation level check will use the default threshold determined by the operating system or not. If this parameter is set to "False" then the value from "File Percent Fragmentation Threshold" will be used.
File Percent Fragmentation Threshold : If the "Use OS Recommendation" is set to "False" then this value will be used as the threshold for fragmentation levels.
Start time : The time of the day (HH:MM) that the fragmentation check should be run.
Days Of Week mask : The day(s) that the fragmentation check should be run. The values for the days are Sunday (1), Monday (2), Tuesday (4), Wednesday (8), Thursday (16), Friday (32) and Saturday (64). To specify multiple days, add the values for the days together. For example, for Monday, Wednesday, and Friday, specify 42 (2+8+32).
When new files are created or data is added to existing files, the file system attempts to allocate space as continuously as it can so that read operations can perform as fast as possible. Over time, allocating space in contiuous sections becomes less and less likely and the result is that files are fragmented across the disk(s). The more fragmented the files on a disk become, the longer it will take the file system to work with those files, which can slow the overall system.
NOTE : Defragmenting a drive can be a resource intensive operation and may slow down system performance while it is being performed. It may be preferrable to defragment drives during off hours.
If the fragmentation threshold for the drive is appropriate then the issue can be resolved by defragmenting the drive via one of the following means:
Remotely: The Logical Disk Defragmentation Task can be used to remotely perform the defragmentation process.
Locally : Connect to the server via terminal services or log onto it locally. Under "My Computer" open up the properties of the logical disk that needs to be defragmented. Switch to the "Tools" tab in the properties window and click the "Defragment now..." button. From there follow the instructions in the "Disk Defragmentor" window to analyze or defragment the disk.
This monitor does not support the on-demand "recalculate health" feature of the Health Explorer window in the Operations Console. When the issue is resolved and the alert is closed either manually reset the monitor's state or wait for the next scheduled interval for the monitor to automatically reset.
Target | Microsoft.Windows.Server.10.0.LogicalDisk | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Windows.Server.10.0.LogicalDisk.DefragAnalysis.Monitortype | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | System.PrivilegedMonitoringAccount |
<UnitMonitor ID="Microsoft.Windows.Server.10.0.LogicalDisk.DefragAnalysis" RunAs="System!System.PrivilegedMonitoringAccount" Accessibility="Public" Enabled="false" Target="ServervNext!Microsoft.Windows.Server.10.0.LogicalDisk" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.Windows.Server.10.0.LogicalDisk.DefragAnalysis.Monitortype" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.Windows.Server.10.0.LogicalDisk.DefragAnalysis.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="Windows!Microsoft.Windows.LogicalDevice"]/DeviceID$ ($Target/Property[Type="Windows!Microsoft.Windows.LogicalDevice"]/Name$)</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter2>
<AlertParameter3>$Data/Context/Property[@Name='FilePercentFragmentation']$</AlertParameter3>
<AlertParameter4>$Data/Context/Property[@Name='OSRecommended']$</AlertParameter4>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="Warning" HealthState="Warning"/>
<OperationalState ID="OverThreshold" MonitorTypeStateID="Success" HealthState="Success"/>
</OperationalStates>
<Configuration>
<SchedulerStart>03:00</SchedulerStart>
<SchedulerDaysOfWeekMask>64</SchedulerDaysOfWeekMask>
<FilePercentFragmentationThreshold>10</FilePercentFragmentationThreshold>
<UseOSRecommendation>true</UseOSRecommendation>
</Configuration>
</UnitMonitor>