Pure Storage FlashArray Host IPS Monitor

PureStorageFlashArray.HostIPSMonitor.Powershell (UnitMonitor)

The Host IPS (Input Per Second) Monitor calculates the number of bytes written per second, between the FlashArray and the Host, 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.PureHost
Parent MonitorPureStorageFlashArray.PureHost.AggregateMonitor
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypePureStorage.FlashArray.TimedScript.PowerShell.HostPerformanceMonitor.UnitMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Host IPS exceeds threshold
Host Write Operations per second were ({0}) and that has exceeded the configured monitoring threshold.
RunAsDefault

Source Code:

<UnitMonitor ID="PureStorageFlashArray.HostIPSMonitor.Powershell" Accessibility="Public" Enabled="true" Target="PureStorage.FlashArray.PureHost" ParentMonitorID="PureStorageFlashArray.PureHost.AggregateMonitor" Remotable="true" Priority="Normal" TypeID="PureStorage.FlashArray.TimedScript.PowerShell.HostPerformanceMonitor.UnitMonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="PureStorageFlashArray.HostIPSMonitor.Powershell.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='writes_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>writes_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>
<HostName>$Target/Property[Type="PureStorage.FlashArray.PureHost"]/Name$</HostName>
<Threshold>30000</Threshold>
<LogToArray>true</LogToArray>
<IgnoreCertificateErrors>true</IgnoreCertificateErrors>
</Configuration>
</UnitMonitor>