MSSQL 2016: Verteilte Transaktion wurde durch MSDTC abgebrochen

Microsoft.SQLServer.2016.Distributed_transaction_aborted_by_MSDTC_1_5_Rule (Rule)

Diese Regel löst eine Warnung aus, wenn die verteilte Transaktion durch MSDTC abgebrochen wurde.

Knowledge Base article:

Zusammenfassung

Microsoft Distributed Transaction Coordinator (MS DTC) hat die an der verteilten Transaktion beteiligte Instanz von SQL Server zum Abbruch der Transaktion aufgefordert. Diese Anweisung zum ABBRECHEN wurde ausgegeben, bevor die Anweisung zum VORBEREITEN von der SQL Server-Instanz angefordert wurde.

Weitere Informationen zu MS DTC finden Sie in den Themen zum MS DTC-Dienst, zu verteilten Transaktionen, zur Architektur verteilter Transaktionen, zum Konfigurieren verknüpfter Server und zur Funktionsweise sofortiger Aktualisierungen in der Onlinedokumentation.

Lösungen

Diese Meldung ist ein Hinweis auf normale Zweiphasencommit-Aktivität. Wenn Sie nicht sicher sind, welche Anwendung oder SQL Server-Abfrage MS DTC aufruft, können Sie eine SQL Profiler-Ablaufverfolgung verwenden, um aufzuzeichnen, welcher Befehl abgebrochen wurde.

Parameter, die außer Kraft gesetzt werden können

Name

Beschreibung

Standardwert

Aktiviert

Aktiviert oder deaktiviert den Workflow.

Ja

Priorität

Definiert die Warnungspriorität.

1

Schweregrad

Definiert den Warnungsschweregrad.

1

Element properties:

TargetMicrosoft.SQLServer.2016.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID8522
Event Source$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
MSSQL 2016: Verteilte Transaktion wurde durch MSDTC abgebrochen
{0}
Event LogApplication
CommentMom2016ID='{CCB1984B-CE37-434C-8752-DCAE743F874E}';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.Distributed_transaction_aborted_by_MSDTC_1_5_Rule" Target="SQL2016Core!Microsoft.SQLServer.2016.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2016ID='{CCB1984B-CE37-434C-8752-DCAE743F874E}';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>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL2016Core!Microsoft.SQLServer.2016.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>8522</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2016.Distributed_transaction_aborted_by_MSDTC_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/EventDisplayNumber$. $Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>