MSSQL 2016 : Impossible de démarrer le gestionnaire d'activation Service Broker

Microsoft.SQLServer.2016.Cannot_start_service_broker_activation_manager_5_Rule (Rule)

La règle déclenche une alerte en cas d'impossibilité de démarrer le gestionnaire d'activation Service Broker.

Knowledge Base article:

Résumé

L’activation de Service Broker permet aux applications d’évoluer dynamiquement pour gérer le trafic des messages. En règle générale, une application utilise l’activation en cas de fluctuations imprévisibles du trafic vers le service ou si le service doit évoluer dynamiquement pour faire face au trafic qu’il reçoit.

Le processus d'activation de Service Broker comprend deux étapes. D'abord, Service Broker détermine si l'activation est nécessaire. Deuxièmement, Service Broker détermine si l'activation se produit. Bien que le processus exact varie entre l'activation interne et externe, les concepts globaux impliqués sont identiques pour toutes les stratégies.

Dans ce cas, le gestionnaire d’activation de Service Broker détermine que l’activation est nécessaire et tente sans succès de démarrer une application Service Broker.

Causes

Cette erreur est enregistrée dans le journal des applications Windows en tant qu'ID d'événement 9701 MSSQLSERVER. Cela peut être dû à un manque de mémoire pendant le démarrage du serveur. Ceci est sans doute lié à un ou plusieurs autres problèmes matériels ou logiciels de l'ordinateur.

Solutions

Recherchez dans le journal des applications Windows les erreurs provoquées par les autres problèmes.

Diagnostiquez le problème en suivant la même procédure que pour des conditions de mémoire insuffisante. Augmentez la mémoire disponible en supprimant moins d'applications essentielles ou en ajoutant de la mémoire virtuelle ou physique.

Pensez aux solutions suivantes pour augmenter la mémoire disponible :

Paramètres remplaçables

Nom

Description

Valeur par défaut

Activé

Active ou désactive le flux de travail.

Oui

Priorité

Définit la priorité de l'alerte.

1

Severité

Définit la gravité de l'alerte.

2

Element properties:

TargetMicrosoft.SQLServer.2016.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID9701
Event Source$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
MSSQL 2016 : Impossible de démarrer le gestionnaire d'activation Service Broker
{0}
Event LogApplication
CommentMom2016ID='{679F7701-5328-45B1-A617-B88F211E4E77}';MOM2016GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

ID Module Type TypeId RunAs 
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.2016.Cannot_start_service_broker_activation_manager_5_Rule" Target="SQL2016Core!Microsoft.SQLServer.2016.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2016ID='{679F7701-5328-45B1-A617-B88F211E4E77}';MOM2016GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>9701</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2016.Cannot_start_service_broker_activation_manager_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/EventDisplayNumber$. $Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>