MSSQL für Linux: Der Agent ist verdächtig. Keine Antwort innerhalb der letzten Minuten.

Microsoft.SQLServer.Linux.CollectionRule.Agent.The_agent_is_suspect._No_response_within_last_minutes_1_5_Rule (Rule)

Dieses Verhalten tritt auf, weil der Replikations-Agent zu ausgelastet ist, um zu antworten, wenn SQL Server Enterprise Manager den Replikations-Agent abruft. Daher kennt SQL Server Enterprise Manager den Status des Replikations-Agents nicht und kann nicht berichten, ob der Replikations-Agent funktionsfähig ist oder nicht.

Knowledge Base article:

Zusammenfassung

Dieses Verhalten tritt auf, weil der Replikations-Agent zu ausgelastet ist, um zu antworten, wenn SQL Server Enterprise Manager den Replikations-Agent abruft. Daher kennt SQL Server Enterprise Manager den Status des Replikations-Agents nicht und kann nicht berichten, ob der Replikations-Agent funktionsfähig ist oder nicht.

Bei einem Fehler im Replikations-Agent wird die folgende Fehlermeldung angezeigt:

Meldung 20536, Schweregrad 10 "Replikation: Fehler bei Agent".

Es gibt zahlreiche Gründe für eine starke Beanspruchung des Replikations-Agents: Möglicherweise werden große Datenmengen repliziert, oder bestimmte Aspekte der Konfiguration oder des Replikationsentwurfs bewirken, dass Prozesse sehr viel Zeit benötigen.

Lösungen

Erhöhen Sie die Inaktivitätsschwelle, um die Häufigkeit, mit der diese Meldung angezeigt wird, zu reduzieren.

Durch eine Änderung dieses Wertes wird das Problem nicht behoben. Dieser Wert legt lediglich fest, wie oft der aktuelle Status des Replikations-Agents abgerufen wird. So ändern Sie den Inaktivitätsschwellenwert:

Sofern Sie keine weitere Fehlermeldung erhalten, die auf ein Problem mit dem Replikations-Agent hinweist, dient die Meldung "Agent ist fehlerverdächtig" nur zur Information. Wenn diese Meldung ausgegeben wird, sollten Sie den Replikations-Agent nicht beenden, falls keine weiteren verwandten Fehler ausgegeben werden. Wenn Sie den Replikations-Agent beenden, führt er einen Rollback für den aktuellen Prozess aus, sodass Sie den Prozess erneut starten müssen. Warten Sie daher, bis der Prozess beendet wurde.

Überschreibbare Parameter

Name

Beschreibung

Standardwert

Aktiviert

Aktiviert oder deaktiviert den Workflow.

Ja

Intervall (Sekunden)

Gibt das Wiederholungsintervall in Sekunden für die Ausführung des Workflows an.

300

Priorität

Definiert die Warnungspriorität.

1

Severity

Defines Alert Severity.

2

Synchronization Time

Synchronization Time

 

Timeout (seconds)

Specifies the time the workflow is allowed to run before being closed and marked as failed.

200

Timeout for database connection (seconds)

The workflow will fail and register an event, if it cannot access the database during the specified period.

15

Element properties:

TargetMicrosoft.SQLServer.Linux.DBEngine
CategoryEventCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
MSSQL für Linux: Der Agent ist verdächtig. Keine Antwort innerhalb der letzten Minuten.
{0}
CommentMom2017ID='{C65DF52B-B877-48C3-B546-67D69C494E84}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

ID Module Type TypeId RunAs 
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ DataSource Microsoft.SQLServer.Linux.DataSource.EventCollectionFilteredAgent Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.Linux.CollectionRule.Agent.The_agent_is_suspect._No_response_within_last_minutes_1_5_Rule" Target="SqlDiscL!Microsoft.SQLServer.Linux.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2017ID='{C65DF52B-B877-48C3-B546-67D69C494E84}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Microsoft.SQLServer.Linux.DataSource.EventCollectionFilteredAgent">
<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>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>200</TimeoutSeconds>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<EventDisplayNumber>20554</EventDisplayNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.Linux.CollectionRule.Agent.The_agent_is_suspect._No_response_within_last_minutes_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/Property[@Name='EventID']$. $Data/Property[@Name='Message']$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>