Monitor de latencia de escritura en disco para bases de datos de 2012.
El monitor comprueba la latencia de la operación de escritura en el disco y genera una alerta.
Esta alerta indica que el tiempo promedio necesario para escribir en el disco ha permanecido mayor que el umbral durante un intervalo.
El problema puede producirse por un rendimiento bajo de Microsoft SQL Server o en un cuello de botella en disco.
Para resolver este error, realice una o varias de las siguientes acciones:
Determine si el rendimiento de disco se ha degradado o la carga de trabajo ha aumentado.
Evalúe las prácticas recomendadas de almacenamiento de SQL Server.
Determine si el almacenamiento para los archivos de base de datos se ha comprometido en exceso, por ejemplo, almacenamiento compartido en la red SAN o Virtual Machines.
Compruebe que se ha asignado una cantidad suficiente de memoria a SQL. El colapso de memoria de SQL Server puede dar lugar a lecturas físicas mayores de lo normal.
Artículo de prácticas recomendadas de SQL Server (Prácticas recomendadas de configuración de disco y errores habituales)
http://go.microsoft.com/fwlink/?LinkId=789184
Nombre | Descripción | Valor predeterminado |
Prioridad de alerta | Define la prioridad de la alerta. | Normal |
Gravedad de alerta | Define la gravedad de la alerta. | Error |
Habilitado | Habilita o deshabilita el flujo de trabajo. | No |
Genera alertas | Define si el flujo de trabajo genera una alerta. | Sí |
Intervalo (segundos) | Intervalo de tiempo periódico en segundos en que se ejecuta el flujo de trabajo. | 300 |
Número de ejemplos | Si el umbral del parámetro que supera el recuento es mayor o igual al número de ejemplos, el monitor estará en un estado incorrecto. | 6 |
Hora de sincronización | Hora de sincronización especificada en un formato de 24 horas. Se puede omitir. | 00:04 |
Umbral | Umbral | 25 |
Tiempo de espera (segundos) | Especifica el tiempo durante el que se permite el flujo de trabajo para ejecutarse antes de cerrarse y de marcarse como incorrecto. | 200 |
Target | Microsoft.SQLServer.2012.Database | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | PerformanceHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.SQLServer.2012.Database.DiskWriteLatency.MonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SQLServer.2012.Database.DiskWriteLatencyMonitor" Accessibility="Public" Enabled="false" Target="SQL2012Core!Microsoft.SQLServer.2012.Database" ParentMonitorID="SystemHealth!System.Health.PerformanceState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.2012.Database.DiskWriteLatency.MonitorType" ConfirmDelivery="false">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2012.Database.DiskWriteLatencyMonitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SQL!Microsoft.SQLServer.Database"]/DatabaseName$</AlertParameter1>
<AlertParameter2>$Target/Host/Property[Type="SQL!Microsoft.SQLServer.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter3>
<AlertParameter4>$Data/Context/ObjectName$</AlertParameter4>
<AlertParameter5>$Data/Context/SampleValue$</AlertParameter5>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Normal" MonitorTypeStateID="Normal" HealthState="Success"/>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<TimeoutSeconds>200</TimeoutSeconds>
<Threshold>25</Threshold>
<NumSamples>6</NumSamples>
<SyncTime/>
</Configuration>
</UnitMonitor>