MSSQL in Linux: Il motore di database di SQL Server è stato riavviato

Microsoft.SQLServer.Linux.EventRule.DBEngine.ServiceRestart (Rule)

Rileva il riavvio del motore di database di SQL Server. Nota: per impostazione predefinita, questa regola è disabilitata. Usare gli override per abilitarla quando necessario.

Knowledge Base article:

Riepilogo

Questa regola rileva il riavvio di SQL Server.

Configurazione

Questa regola rileva che il servizio Motore di database di SQL è rimasto nello stato "Arrestato" per un breve periodo di tempo ed è tornato allo stato "In esecuzione" al termine di tale periodo. La durata consentita della mancata disponibilità viene definita dal parametro "Tempo di indisponibilità" ed è possibile eseguirne l'override. Per impostazione predefinita, questo valore è di 900 secondi (15 minuti).

Parametri di cui è possibile eseguire l'override

Nome

Descrizione

Valore predefinito

Abilitato

Abilita o disabilita il flusso di lavoro.

No

Priorità

Definisce la priorità dell'avviso.

1

Gravità

Definisce la gravità dell'avviso.

1

Timeout (secondi)

Specifica il tempo di esecuzione consentito per il flusso di lavoro prima che venga chiuso e contrassegnato come non riuscito.

300

Timeout per la connessione di database (secondi)

Il flusso di lavoro avrà esito negativo e registrerà un evento se non riesce ad accedere al database durante il periodo specificato.

15

Tempo di indisponibilità (secondi)

Il flusso di lavoro tenterà di rilevare un evento di avvio del servizio durante questo intervallo, dopo l'arresto del servizio eventi.

900

Element properties:

TargetMicrosoft.SQLServer.Linux.DBEngine
CategoryAvailabilityHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
MSSQL in Linux: Il motore di database di SQL Server è stato riavviato
Il motore di database di SQL Server per l'istanza di SQL Server "{0}" è stato riavviato nel computer "{1}".

Member Modules:

ID Module Type TypeId RunAs 
ServiceRestart DataSource Microsoft.SQLServer.Linux.DataSource.DBEngineServiceRestart Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.Linux.EventRule.DBEngine.ServiceRestart" Enabled="false" Target="SqlDiscL!Microsoft.SQLServer.Linux.DBEngine" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>AvailabilityHealth</Category>
<DataSources>
<DataSource ID="ServiceRestart" TypeID="Microsoft.SQLServer.Linux.DataSource.DBEngineServiceRestart">
<MachineName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<NetbiosComputerName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<TimeoutSeconds>300</TimeoutSeconds>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<CorrelatorInterval>900</CorrelatorInterval>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.Linux.EventRule.DBEngine.ServiceRestart.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter2>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>