Servicio de Windows de SQL Server

Microsoft.SQLServer.Windows.Monitor.LocalDBEngine.ServiceStatus (UnitMonitor)

Este monitor comprueba el estado del servicio de motor de base de datos local de SQL Server.

Knowledge Base article:

Resumen

Este monitor comprueba el estado del servicio de motor de base de datos local de SQL Server.

Causas

El estado "No está en ejecución" de este monitor indica que el servicio del motor de base de datos de SQL está configurado para iniciarse automáticamente, pero está en estado "Detenido" y no se ha iniciado en el intervalo de tiempo especificado. La duración del intervalo se define en la propiedad de monitor "Tiempo no disponible" y se puede invalidar. De forma predeterminada, este valor es 900 segundos (15 minutos). Si el motor de base de datos de SQL vuelve al estado "En ejecución" más rápidamente que este tiempo, significa que se ha reiniciado.

Si este monitor produce demasiado ruido en un entorno específico, incremente el valor de "Tiempo no disponible". Por el contrario, si hay demasiada latencia, reduzca el valor de "Tiempo no disponible".

En general, el servicio de Windows se puede detener por numerosos motivos, entre los que se incluyen:

Resoluciones

Puede ver otras alertas para esta instancia de SQL Server que pueden estar relacionadas con este problema mediante el siguiente vínculo:

Ver alertas de SQL Server

Parámetros invalidables

Nombre

Descripción

Valor predeterminado

Prioridad de la alerta

Define la prioridad de alerta.

Normal

Gravedad de la alerta

Define la gravedad de alerta.

Error

Alertar solo si el tipo de inicio del servicio es automático

Solo se puede establecer en "true" o "false". El flujo de trabajo no considerará la configuración del tipo de inicio actual del servicio si este parámetro se establece en "false". El valor predeterminado es "true".

Habilitado

Habilita o deshabilita el flujo de trabajo.

Genera alertas.

Define si el flujo de trabajo genera una alerta.

Intervalo (segundos)

Intervalo de tiempo periódico en segundos en que se ejecuta el flujo de trabajo.

60

Hora de sincronización

Hora de sincronización especificada en un formato de 24 horas. Se puede omitir.

 

Tiempo no disponible (segundos)

Duración mínima de no disponibilidad de servicio para considerar que su estado es incorrecto.

900

Element properties:

TargetMicrosoft.SQLServer.Windows.LocalDBEngine
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.Windows.MonitorType.LocalDBEngine.ServiceStatus
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL en Windows: se ha detenido el servicio SQL Server
El servicio de Windows para la instancia del motor de base de datos {0} se ha detenido en el equipo {1}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.Windows.Monitor.LocalDBEngine.ServiceStatus" Accessibility="Public" Enabled="true" Target="SqlDiscW!Microsoft.SQLServer.Windows.LocalDBEngine" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SQLServer.Windows.MonitorType.LocalDBEngine.ServiceStatus" ConfirmDelivery="false">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.Windows.Monitor.LocalDBEngine.ServiceStatus.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/PrincipalName$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="Running" HealthState="Success"/>
<OperationalState ID="Error" MonitorTypeStateID="NotRunning" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>60</IntervalSeconds>
<SyncTime/>
<PrincipalName>$Target/Property[Type="SqlDiscW!Microsoft.SQLServer.Windows.DBEngine"]/PrincipalName$</PrincipalName>
<ServiceName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ServiceName$</ServiceName>
<CheckStartupType>true</CheckStartupType>
<UnavailableTime>900</UnavailableTime>
</Configuration>
</UnitMonitor>