Quota di archiviazione superata per la coda MSMQ. Impossibile archiviare altri messaggi nella coda.
È stata raggiunta la quota della coda di Accodamento messaggi.
Ridurre il numero di messaggi in sospeso
Per risolvere il problema:
Elaborare i messaggi esistenti nella coda per ridurre il numero di messaggi in sospeso sotto la soglia della quota della coda. Verificare che la velocità di elaborazione dei messaggi è maggiore rispetto alla velocità di accodamento. Potrebbe essere necessario ulteriore hardware oppure modifiche all'architettura della soluzione.
È inoltre possibile aumentare la quota specifica della coda. Per altre informazioni sulle quote della coda in Accodamento messaggi, vedere l'articolo 899612 nella Microsoft Knowledge Base ( http://go.microsoft.com/fwlink/?LinkID=107359).
Per evitare questo problema in futuro, l'applicazione di provenienza deve richiedere riconoscimenti negativi (NACK) dal computer al quale invia messaggi. Se all'applicazione di provenienza viene restituito un NACK che indica che la quota per la coda o computer di destinazione è stata raggiunta, l'applicazione di provenienza può interrompere l'invio di messaggi oppure scaricare i messaggi ad un'altra destinazione. Nack e Ack sono richiesti in maniera programmatica dal mittente. Per altre informazioni, vedere Messaggistica affidabile con MSMQ e .NET ( http://go.microsoft.com/fwlink/?LinkID=95381).
È possibile usare lo strumento da riga di comando perfmon per monitorare vari punti di dati correlati ai messaggi in ingresso e in uscita in Accodamento messaggi.
Per eseguire questa procedura, è necessario appartenere al gruppo Administrators oppure avere ricevuto in delega l'autorità appropriata.
Per utilizzare perfmon per il monitoraggio dei dati:
Aprire un prompt dei comandi: Per aprire un prompt dei comandi, fare clic su Start. Nella casella di ricerca digitare cmd, quindi premere INVIO.
Al prompt dei comandi, digitare Perfmon, quindi premere INVIO.
Nell'albero della console, fare clic su Performance Monitor in Strumenti di monitoraggio.
Nel riquadro dei dettagli, fare clic sul segno di addizione (+) per aggiungere un monitoraggio.
In Contatori nella scheda Aggiungi contatori, fare clic sul di addizione (+) accanto al servizio MSMQ.
Selezionare i contatori di cui si ha bisogno.
Fare clic su Aggiungi, quindi su OK.
Per altre informazioni, vedere l'ID evento 2182 ( http://technet.microsoft.com/it-it/library/dd337533(WS.10).aspx)
Target | Microsoft.MSMQ.10.0.Servers | ||
Category | AvailabilityHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
Alert | WriteAction | System.Health.GenerateAlert | Default |
<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>