Applies to: Exchange Server 2013
Topic Last Modified: 2013-01-16
In Microsoft Exchange Server 2013, you can use the Queue Viewer in the Exchange Toolbox or the Exchange Management Shell to manage messages in queues. For more information about using the message management cmdlets in the Exchange Management Shell, see Use the Exchange Management Shell to Manage Queues.
What do you need to know before you begin?
- Estimated time to complete each procedure: 15 minutes
- You need to be assigned permissions before you can perform this
procedure or procedures. To see what permissions you need, see the
"Queues" entry in the Mail Flow
Permissions topic.
- For information about keyboard shortcuts that may apply to the
procedures in this topic, see Keyboard Shortcuts in
the Exchange Admin Center.
Tip: |
---|
Having problems? Ask for help in the Exchange forums. Visit the forums at: Exchange Server, Exchange Online, or Exchange Online Protection |
What do you want to do?
Remove messages from queues
A message that's being sent to multiple recipients might be located in more than one queue. To remove a message from more than one queue in a single operation, you need to use a filter. You can select whether to send a non-delivery report (NDR) when you remove messages from a queue. You can't remove a message from the Submission queue.
Use Queue Viewer in the Exchange Toolbox to remove messages
Brief introductory text if necessary.
- Click Start > All Programs > Microsoft
Exchange 2013 > Exchange Toolbox.
- In the Mail flow tools section, double-click Queue
Viewer to open the tool in a new window.
- In Queue Viewer, click the Messages tab. A list of all
messages on the server to which you're connected is displayed. To
adjust the action to a single queue, click the Queues tab,
double-click the queue name, and then click the Server\Queue
tab that appears.
- Select one or more messages from the list, right-click, and
then select Remove Messages (with NDR) or Remove Messages
(without NDR). A dialog box appears that confirms the selected
action and displays, Do you want to continue? Click
Yes.
- To remove all messages from a particular queue, click the
Queues tab. Select a queue, right-click, and then select
Remove Messages (with NDR) or Remove Messages (without
NDR). A dialog box appears that confirms the selected action
and displays, Do you want to continue? Click Yes.
Note: If you're working with a filtered list, the displayed page may not include all items in the filter. In this case, a prompt appears that displays: This action will affect all items on this page. To expand the scope of this action to include all items in this filter, check the following box before you click OK.
Use the Shell to remove messages
To remove messages from queues, use the following syntax.
Copy Code | |
---|---|
Remove-Message <-Identity MessageIdentity | -Filter {MessageFilter}> -WithNDR <$true | $false> |
This example removes messages in the queues that have a subject of "Win Big" without sending an NDR.
Copy Code | |
---|---|
Remove-Message -Filter {Subject -eq "Win Big"} -WithNDR $false |
This example removes the message with the message ID 3 from the unreachable queue on server named Mailbox01 and sends an NDR.
Copy Code | |
---|---|
Remove-Message -Identity Mailbox01\Unreachable\3 -WithNDR $true |
How do you know this worked?
To verify that you have successfully removed messages from queues, do one of the following:
- In Queue Viewer, select the queue or create a filter to verify
the messages no longer exist.
- Use the Get-Message cmdlet with the Queue or
Filter parameters to verify the messages no longer exist.
For more information, see Get-Message.
Resume messages in queues
You can resume a message that currently has a status of Suspended. By resuming a message, you enable delivery of the message. If you resume a message located in the poison message queue, the message will be sent to the categorizer for processing. A message being sent to multiple recipients might be located in multiple queues. To resume a message in more than one queue in a single operation, you must use a filter.
Use Queue Viewer in the Exchange Toolbox to resume messages
- Click Start > All Programs > Microsoft
Exchange 2013 > Exchange Toolbox.
- In the Mail flow tools section, double-click Queue
Viewer to open the tool in a new window.
- In Queue Viewer, click the Messages tab. A list of all
messages on the server to which you're connected is displayed. To
adjust the action to focus on a single queue, click the
Queues tab, double-click the queue name, and then click the
Server\Queue tab that appears.
- Click Create Filter, and enter your filter expression as
follows:
- Select Status from the message property drop-down
list.
- Select Equals from the comparison operator drop-down
list.
- Select Suspended from the value drop-down list.
- Select Status from the message property drop-down
list.
- Click Apply Filter. All messages that have a status of
Suspended are displayed.
- Select one or more messages from the list, right-click, and
select Resume.
Use the Shell to resume messages
To resume messages, use the following syntax:
Copy Code | |
---|---|
Resume-Message <-Identity MessageIdentity | -Filter {MessageFilter}> |
This example resumes all messages being sent from any sender in the Contoso.com domain.
Copy Code | |
---|---|
Resume-Message -Filter {FromAddress -eq "*contoso.com"} |
This example resumes the message with the message ID 3 in the unreachable queue on server Hub01.
Copy Code | |
---|---|
Resume-Message -Identity Hub01\Unreachable\3 |
To resubmit messages from the poison message queue, perform the following steps:
How do you know this worked?
To verify that you have successfully resume messages in queues, do one of the following:
- In Queue Viewer, select the queue or create a filter to verify
the messages are no longer suspended.
- Use the Get-Message cmdlet with the Queue or
Filter parameters to verify the messages are no longer
suspended. For more information, see Get-Message.
Note that if you can't find the message in any queues on the server, that probably indicates the message was successfully delivered to the next hop.
Suspend messages in queues
When you suspend a message, you prevent delivery of the message. A message that appears in the queue but is already in delivery won't be suspended. Delivery will continue, and the message status will be PendingSuspend. If the delivery fails, the message will re-enter the queue, and the message will then be suspended. You can't suspend a message in the Submission queue or in the poison message queue.
A message being sent to multiple recipients might be located in multiple queues. To suspend a message in more than one queue in a single operation, you need to use a filter.
Use Queue Viewer in the Exchange Toolbox to suspend messages
- Click Start > All Programs > Microsoft
Exchange 2013 > Exchange Toolbox.
- In the Mail flow tools section, double-click Queue
Viewer to open the tool in a new window.
- In Queue Viewer, click the Messages tab. A list of all
messages on the server to which you're connected is displayed. To
limit the view to a single queue, click the Queues tab,
double-click the queue name, and then click the Server\Queue
tab that appears.
- Select one or more messages, right-click, and then select
Suspend.
Use the Shell to suspend messages
To suspend messages, use the following syntax:
Copy Code | |
---|---|
Suspend-Message <-Identity MessageIdentity | -Filter {MessageFilter}> |
This example suspends all messages in the queues that are from any sender in the domain contoso.com.
Copy Code | |
---|---|
Suspend-Message -Filter {FromAddress -eq "*contoso.com"} |
This example suspends the message with the message ID 3 in the unreachable queue on server named Mailbox01:
Copy Code | |
---|---|
Suspend-Message -Identity Mailbox01\Unreachable\3 |
How do you know this worked?
To verify that you have successfully suspended messages in queues, do one of the following:
- In Queue Viewer, select the queue or create a filter to verify
messages are suspended.
- Use the Get-Message cmdlet with the Queue or
Filter parameters to verify the messages are suspended. For
more information, see Get-Message.