Opslagquotum overschreden voor MSMQ-wachtrij. Er kunnen geen berichten meer in de wachtrij worden opgeslagen.

Microsoft.MSMQ.10.0.Rule.Alert.Event2182 (Rule)

Knowledge Base article:

Samenvatting

Opslagquotum overschreden voor MSMQ-wachtrij. Er kunnen geen berichten meer in de wachtrij worden opgeslagen.

Oorzaken

Er is een Message Queuing-wachtrijquotum bereikt.

Oplossingen

Reduceer het aantal uitstaande berichten

Dit probleem oplossen:

Om dit probleem in de toekomst te voorkomen, moet de verzendende toepassing negatieve bevestigingen (NACK) aanvragen bij de computer waarnaar deze berichten verzendt. Als een NACK wordt geretourneerd naar de verzendende toepassing en deze aangeeft dat het quotum voor de doelwachtrij of -computer is bereikt, kan de verzendende toepassing ofwel stoppen met het verzenden van berichten of de berichten offloaden naar een andere bestemming. NACK's en ACK's worden via een programma aangevraagd door de verzender. Zie Betrouwbare messaging met MSMQ en .NET ( http://go.microsoft.com/fwlink/?LinkID=95381) voor meer informatie.

U kunt gebruikmaken van het opdrachtregelhulpprogramma perfmon om verschillende gegevenspunten te controleren met betrekking tot de binnenkomende en uitgaande berichten in Message Queuing.

Als u deze procedure wilt uitvoeren, moet u lid zijn van de groep Administrators of over de juiste machtiging beschikken.

Gebruikmaken van perfmon om gegevens te controleren:

Aanvullend

Zie gebeurtenis-id 2182 ( http://technet.microsoft.com/en-us/library/dd337533(WS.10).aspx) voor meer informatie.

Element properties:

TargetMicrosoft.MSMQ.10.0.Servers
CategoryAvailabilityHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
Opslagquotum overschreden voor MSMQ-wachtrij. Er kunnen geen berichten meer in de wachtrij worden opgeslagen.
Beschrijving van gebeurtenis: {0}
Event LogApplication

Member Modules:

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

Source Code:

<Rule ID="Microsoft.MSMQ.10.0.Rule.Alert.Event2182" Enabled="false" Target="Microsoft.MSMQ.10.0.Servers" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>AvailabilityHealth</Category>
<DataSources>
<DataSource ID="DS" 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 Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">2182</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">EventSourceName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="Microsoft.MSMQ.10.0.ServerRole"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="Alert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertName/>
<AlertDescription/>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Microsoft.MSMQ.10.0.Rule.Alert.Event2182.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
<Custom1/>
<Custom2/>
<Custom3/>
<Custom4/>
<Custom5/>
<Custom6/>
<Custom7/>
<Custom8/>
<Custom9/>
<Custom10/>
</WriteAction>
</WriteActions>
</Rule>