缩减日志队列恢复

Microsoft.MSMQ.6.3.Recovery.TrimJournalQueue (Recovery)

此恢复可将日志队列缩减到预定义的配额使用百分比。

Knowledge Base article:

摘要

从日志队列中删除消息。

配置

从最早的消息开始,然后根据特定逻辑从日志中删除消息。可以使用三种不同类型的逻辑,如下所示:

配额

删除消息,直到配额百分比降低到目标值。

时间

删除早于指定日期/时间的所有消息。

千字节

删除合计达到指定千字节数的消息。

清除

删除所有消息。

Element properties:

TargetMicrosoft.MSMQ.6.3.Queues
MonitorMicrosoft.MSMQ.6.3.Monitor.Queue.JournalPercentage
Reset MonitorTrue
RemotableTrue
Timeout300
CategoryAvailabilityHealth
Enabledfalse
AccessibilityPublic

Member Modules:

ID Module Type TypeId RunAs 
TrimQueue WriteAction Microsoft.MSMQ.6.3.TrimQueue Default

Source Code:

<Recovery ID="Microsoft.MSMQ.6.3.Recovery.TrimJournalQueue" Accessibility="Public" Enabled="false" Target="Microsoft.MSMQ.6.3.Queues" Monitor="Microsoft.MSMQ.6.3.Monitor.Queue.JournalPercentage" ResetMonitor="true" ExecuteOnState="Error" Remotable="true" Timeout="300">
<Category>AvailabilityHealth</Category>
<WriteAction ID="TrimQueue" TypeID="Microsoft.MSMQ.6.3.TrimQueue">
<Computer>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</Computer>
<QueuePath>$Target/Property[Type="Microsoft.MSMQ.6.3.Queue"]/PathName$</QueuePath>
<TargetQueue>journal</TargetQueue>
<TrimLogic>quota</TrimLogic>
<NumericParameter>60</NumericParameter>
<TimeoutSeconds>300</TimeoutSeconds>
</WriteAction>
</Recovery>