Applies to: Exchange Server 2007
Topic Last Modified: 2007-06-08

Use the Suspend-Queue cmdlet to stop outbound activities for a queue on a computer that has the Hub Transport server role or the Edge Transport server role installed.

Syntax

Suspend-Queue -Identity <QueueIdentity>
Suspend-Queue -Filter <String> [-Server <ServerIdParameter>]

Parameters

Parameter Required Type Description

Filter

Required

System.String

The Filter parameter requires an expression that specifies the property value criteria for the queues that you want to suspend. The expression includes a property name that is followed by a comparison operator and value. The following queue properties are valid criteria for the Filter parameter:

  • DeliveryType   The delivery type for this queue as defined by transport. The delivery type must be one of the following values:

    • DNSConnectorDelivery

    • NonSMTPGatewayDelivery

    • SmartHostConnectorDelivery

    • SmtpRelayWithinAdSitetoEdge

    • MapiDelivery

    • SmtpRelayWithinAdSite

    • SmtpRelaytoRemoteAdSite

    • SmtpRelaytoTiRg

    • Undefined

    • Unreachable

  • Identity   Enter the queue identity in the form of Server\destination, where destination is a remote domain, mailbox server, or persistent queue name.

  • LastError   A text string of the last error recorded for a queue.

  • LastRetryTime   The time when a connection was last tried for this queue.

  • MessageCount   The number of items in the queue.

  • NextHopConnector   The GUID of the connector that was used to create the queue.

  • NextHopDomain   The next hop domain of the queue, specified as a remote Simple Mail Transfer Protocol (SMTP) domain, a server name, the name of an Active Directory site, or a message database (MDB) identifier.

  • NextRetryTime   The time when a connection will next be tried for this queue.

  • Status   The status of the queue. Queue status options are Active, Ready, Retry, or Suspended.

You can specify multiple criteria by using the - and comparison operator. Property values that are not expressed as an integer must be enclosed in quotation marks.

Identity

Required

Microsoft.Exchange.Data.QueueViewer.QueueIdentity

Use the Identity parameter to specify the identity of the queue that contains the messages that you want to suspend. Enter the queue identity in the form of Server\destination, where destination is a remote domain, mailbox server, or persistent queue name.

Server

Optional

Microsoft.Exchange.Configuration.Tasks.ServerIdParameter

Use the Server parameter to specify the name of the server to connect to by using remote procedure call (RPC) that contains the queues that hold the messages that you want to suspend. Enter the server name as a host name or a fully qualified domain name (FQDN). If this parameter is not used, the local server is queried.

Detailed Description

The Suspend-Queue cmdlet stops outbound activities on a queue that has a status of Active or Retry. Messages that are in delivery through SMTP-send will finish operations. No additional messages will leave the queue. If you specify an Identity parameter, the queue will be suspended if the identity matches only a single queue. If the identity matches more than one queue, you will receive an error. To suspend more than one queue in a single operation, you must use a filter.

You must use an Identity parameter or a Filter parameter. The Identity and Filter parameter sets are mutually exclusive. You can suspend a queue on a remote server by including the server name as part of the Identity parameter or by using the Server parameter with a filter query. If you do not specify a server, the command runs against only the local server.

To run the Suspend-Queue cmdlet, the account you use must be delegated the following:

  • Exchange Server Administrator role and local Administrators group for the target server

To run the Suspend-Queue cmdlet on a computer that has the Edge Transport server role installed, you must log on by using an account that is a member of the local Administrators group on that computer.

For more information about permissions, delegating roles, and the rights that are required to administer Microsoft Exchange Server 2007, see Permission Considerations.

Input Types

Return Types

Errors

Error Description

 

 

Exceptions

Exceptions Description

 

 

Example

The following example shows two Suspend-Queue commands. The first command suspends outgoing activities on all queues that are holding messages for delivery to the specified domain and that currently have a status of Retry.

The second command binds to a remote server by using RPC and suspends all queues that have more than 100 messages in the queue.

For more information about how to use the Exchange Management Shell to perform queue viewer tasks, see Using the Exchange Management Shell to Manage Queues.

Copy Code
Suspend-Queue -Filter {NextHopDomain -eq "contoso.com" -and Status -eq "retry"}
Suspend-Queue -Server ExchSrv1.contoso.com -Filter {MessageCount -gt 100}