Monitors the availability of this File Share.
The Operations Manager Action Account needs Read Permission on the Share.
Monitor is disabled by default.
Monitors the availability of a File Share.
Use overrides to enable the monitor for a File Share or all File Shares.
The File Share is unavailable.
Check the Permissions of the Opsmgr Action Account. Check the Server to see any problems.
The Action Account needs READ Permission on the File Share.Monitor is disabled by default.
Target | Windows.Monitoring.FileSystem.FileShare | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Windows.TimedScript.TwoStateMonitorType | ||
Remotable | True | ||
Accessibility | Internal | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Windows.Monitoring.FileSystem.FileShare.AvailabilityHealth" Accessibility="Internal" Enabled="false" Target="Windows.Monitoring.FileSystem.FileShare" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.TimedScript.TwoStateMonitorType" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Windows.Monitoring.FileSystem.FileShare.AvailabilityHealth_AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="Windows.Monitoring.FileSystem.FileShare"]/Name$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="Windows.Monitoring.FileSystem.FileShare"]/Path$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="Success" HealthState="Success"/>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>3600</IntervalSeconds>
<SyncTime/>
<ScriptName>FileShareAvailability.vbs</ScriptName>
<Arguments>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$ "$Target/Property[Type="Windows.Monitoring.FileSystem.FileShare"]/Name$"</Arguments>
<ScriptBody> '==========================================================================
'
' NAME: FileShareAvailability.vbs
'
' AUTHOR: Jaime Correia
'
' COMMENT: Custom DataSource Script for the FileShare Availability Monitor (Opsmgr 2007)
'
'==========================================================================
On Error Resume Next
Dim oArgs
Dim objFSO
Dim objFolder
Dim Erro
Dim TargetComputer, ShareName
Dim oAPI, oBag
Dim ScriptName, ENU_Message
Const EVENTLOG_INFORMATION_TYPE = 4
Set oArgs = WScript.Arguments
'Arguments for the script to run
TargetComputer = oArgs(0)
ShareName = oArgs(1)
'Test string to test the script
'****************
'Wscript.Echo
'Wscript.Echo "TargetComputer: " & TargetComputer
'Wscript.Echo "ShareName: " & ShareName
'Wscript.Echo
'****************
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("\\" & Targetcomputer & "\" & ShareName)
If Err.Number = 0 Then
'WScript.Echo "share ok " & "\\" & TargetComputer & "\" & ShareName
Erro = 0
Else
'WScript.Echo "share bad " & "\\" & TargetComputer & "\" & ShareName
Erro = 1
End If
'Event Message for success
ScriptName = "ScriptName = FileShare.vbs"
ENU_MESSAGE = vbCr & "ShareName: " & ShareName & " is being monitored" & vbCr & "TargetComputer: " & TargetComputer
Set oAPI = CreateObject("MOM.ScriptAPI")
Set oBag = oAPI.CreateTypedPropertyBag(StateDataType)
CAll oAPI.LogScriptEvent (ScriptName, 10600, EVENTLOG_INFORMATION_TYPE ,ENU_Message)
'property bag for state changes
Call oBag.AddValue("TargetComputer", TargetComputer)
Call oBag.AddValue("Share" , ShareName)
Call oBag.AddValue("Erro" , Erro)
'adding data to opsmgr
Call oAPI.Return(oBag)
'Wscript.Echo "TargetComputer " & TargetComputer
'Wscript.Echo "Share: " & ShareName
'Wscript.Echo "Erro: " & Erro
</ScriptBody>
<TimeoutSeconds>300</TimeoutSeconds>
<ErrorExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Erro']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">1</Value>
</ValueExpression>
</SimpleExpression>
</ErrorExpression>
<SuccessExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Erro']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">0</Value>
</ValueExpression>
</SimpleExpression>
</SuccessExpression>
</Configuration>
</UnitMonitor>