Pure Storage FlashArray Volume OPS Monitor

PureStorageFlashArray.VolumeOPSMonitor.Powershell (UnitMonitor)

The Volume OPS (Output Per Second) Monitor calculates the number of bytes read per second, between the FlashArray and the Volume, averaged to the last current polled value. The last polled value is when the metrics were last polled from the array (usually within 15 minutes).

Element properties:

TargetPureStorage.FlashArray.PureVolume
Parent MonitorPureStorageFlashArray.PureVolume.AggregateMonitor
CategoryPerformanceHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypePureStorage.FlashArray.TimedScript.PowerShell.VolumePerformanceMonitor.UnitMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Volume OPS exceeds threshold
Volume Read Operations per second were ({0}) and that has exceeded the configured monitoring threshold.
RunAsDefault

Source Code:

<UnitMonitor ID="PureStorageFlashArray.VolumeOPSMonitor.Powershell" Accessibility="Public" Enabled="false" Target="PureStorage.FlashArray.PureVolume" ParentMonitorID="PureStorageFlashArray.PureVolume.AggregateMonitor" Remotable="true" Priority="Normal" TypeID="PureStorage.FlashArray.TimedScript.PowerShell.VolumePerformanceMonitor.UnitMonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="PureStorageFlashArray.VolumeOPSMonitor.Powershell.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='reads_per_second']$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="OverThreshold" MonitorTypeStateID="OverThreshold" HealthState="Warning"/>
<OperationalState ID="UnderThreshold" MonitorTypeStateID="UnderThreshold" HealthState="Success"/>
</OperationalStates>
<Configuration>
<TimeoutSeconds>120</TimeoutSeconds>
<IntervalSeconds>900</IntervalSeconds>
<MetricName>reads_per_second</MetricName>
<Endpoint>$Target/Host/Property[Type="PureStorage.FlashArray.PureArray"]/Endpoint$</Endpoint>
<UserName>$RunAs[Name="PureStorage.FlashArray.FlashArrayAdminAccount"]/UserName$</UserName>
<Password>$RunAs[Name="PureStorage.FlashArray.FlashArrayAdminAccount"]/Password$</Password>
<VolumeName>$Target/Property[Type="PureStorage.FlashArray.PureVolume"]/Name$</VolumeName>
<Threshold>30000</Threshold>
<LogToArray>true</LogToArray>
<IgnoreCertificateErrors>true</IgnoreCertificateErrors>
</Configuration>
</UnitMonitor>