File Share Health State Monitor

Microsoft.Windows.Server.10.0.Storage.StorageSpacesDirect.FileShare.SteadyStateMonitor (UnitMonitor)

Monitor for File Share Health State

Knowledge Base article:

Summary

File Share Health State Monitor changes the state when the state of the File Share is unhealthy.

Element properties:

TargetMicrosoft.Windows.Server.10.0.Storage.StorageSpacesDirect.FileShare
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateFalse
Alert Auto ResolveFalse
Monitor TypeMicrosoft.Windows.Server.10.0.Storage.StorageSpacesDirect.StorageObject.SteadyStateMonitorType
RemotableTrue
AccessibilityPublic
RunAsMicrosoft.Storage.Library.MonitoringRunAsProfile

Source Code:

<UnitMonitor ID="Microsoft.Windows.Server.10.0.Storage.StorageSpacesDirect.FileShare.SteadyStateMonitor" Accessibility="Public" Target="Microsoft.Windows.Server.10.0.Storage.StorageSpacesDirect.FileShare" RunAs="MicrosoftStorageLibrary!Microsoft.Storage.Library.MonitoringRunAsProfile" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" TypeID="Microsoft.Windows.Server.10.0.Storage.StorageSpacesDirect.StorageObject.SteadyStateMonitorType" Enabled="true">
<Category>AvailabilityHealth</Category>
<OperationalStates>
<OperationalState ID="Critical" MonitorTypeStateID="Error" HealthState="Error"/>
<OperationalState ID="Warning" MonitorTypeStateID="Warning" HealthState="Warning"/>
<OperationalState ID="Healthy" MonitorTypeStateID="Success" HealthState="Success"/>
</OperationalStates>
<Configuration>
<TargetInstanceUniqueID>$Target/Property[Type="MicrosoftStorageLibrary!Microsoft.Storage.Library.Windows.FileShare"]/UniqueID$</TargetInstanceUniqueID>
<TargetInstanceObjectID>$Target/Property[Type="Microsoft.Windows.Server.10.0.Storage.StorageSpacesDirect.FileShare"]/ObjectId$</TargetInstanceObjectID>
<ComputerName>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<WQLQuery>Select SourceUniqueId, SourceObjectId, PreviousHealthStatus, CurrentHealthStatus From MSFT_StorageHealthStatusChangeEvent Where SourceClassName = 'MSFT_FileShare'</WQLQuery>
<PollInterval>15</PollInterval>
<TimeoutSeconds>300</TimeoutSeconds>
<StorageClassName>MSFT_FileShare</StorageClassName>
</Configuration>
</UnitMonitor>