Log Write (\%)

Microsoft.SqlServer.Azure.UnitMonitor.DatabaseLogWrite (UnitMonitor)

Monitors the write resource utilization in percentage terms by all database sessions.

Knowledge Base article:

Summary

Monitors write resource utilization in percentage terms of this database.

Element properties:

TargetMicrosoft.SqlServer.Azure.Database
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SqlServer.Azure.UnitMonitorType.DatabaseResourceStats
RemotableTrue
AccessibilityPublic
Alert Message
Write resource utilization \% exceeds configured limit
Write resource utilization in percentage terms for database "{0}" on server "{1}" exceeds the configured limit with value of {2}\%.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SqlServer.Azure.UnitMonitor.DatabaseLogWrite" TypeID="Microsoft.SqlServer.Azure.UnitMonitorType.DatabaseResourceStats" Target="Microsoft.SqlServer.Azure.Database" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="true" Priority="Normal" Accessibility="Public" Enabled="true" ConfirmDelivery="true">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SqlServer.Azure.UnitMonitor.DatabaseLogWrite.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="Microsoft.SqlServer.Azure.Database"]/DatabaseName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="Microsoft.SqlServer.Azure.Database"]/ServerName$</AlertParameter2>
<AlertParameter3>$Data/Context/Property[@Name='CPUPercent']$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Healthy" MonitorTypeStateID="Healthy" HealthState="Success"/>
<OperationalState ID="Warning" MonitorTypeStateID="Warning" HealthState="Warning"/>
<OperationalState ID="Critical" MonitorTypeStateID="Critical" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>900</IntervalSeconds>
<SyncTime/>
<TimeoutSeconds>300</TimeoutSeconds>
<ServerName>$Target/Property[Type="Microsoft.SqlServer.Azure.Database"]/ServerName$</ServerName>
<DatabaseName>$Target/Property[Type="Microsoft.SqlServer.Azure.Database"]/DatabaseName$</DatabaseName>
<PropertyName>LogWritePercent</PropertyName>
<WarningThreshold>75</WarningThreshold>
<CriticalThreshold>95</CriticalThreshold>
</Configuration>
</UnitMonitor>