Búsqueda de colas y mensajes en colas en el Shell de administración de Exchange

Al igual que en versiones anteriores de Exchange, puede usar el Shell de administración de Exchange en Exchange Server para ver información sobre colas y mensajes, y usar esa información para realizar acciones en colas y mensajes. Normalmente, un Exchange activo contiene un gran número de colas y mensajes que se van a entregar, por lo que es importante comprender cómo identificar las colas o mensajes que desea administrar.

Observe que también puede usar el Visor de cola en Exchange Toolbox para administrar colas y mensajes en cola. Sin embargo, los cmdlets de visualización de colas y mensajes en el Shell de administración de Exchange admiten más propiedades filtrables y opciones de filtro que el Visor de colas. Para obtener más información acerca del uso del Visor de cola, vea Visor de cola.

Recuerde también que existen colas en servidores de buzones de correo y servidores de transporte perimetral (el servicio de transporte). Para obtener más información sobre las colas y los mensajes en las colas, consulte Colas y mensajes en colas.

Parámetros de filtrado de la cola

En la tabla siguiente se resumen los parámetros de filtrado que están disponibles en los cmdlets de administración de colas.

Cmdlet Parámetros de filtrado Comentarios
Get-Queue Exclude
Filter
Identity
Include
Servidor
Puede usar los parámetros Include y Exclude con los demás parámetros de filtrado en el mismo comando.
No puede usar los parámetros Identity y Filter en el mismo comando.
El parámetro Server especifica el servidor donde desea ejecutar el comando. No puede usar los parámetros Server e Identity en el mismo comando, pero puede usar el parámetro Server con los demás parámetros de filtrado en el mismo comando.
Resume-Queue
Retry-Queue
Suspend-Queue
Identity
Filter
Servidor
No puede usar el parámetro Identity con los demás parámetros de filtrado en el mismo comando.
El parámetro Server especifica el servidor donde desea ejecutar el comando. Puede usar los parámetros Server y Filter en el mismo comando.
Get-QueueDigest Dag
Filter
Forest
Servidor
Site
Debe usar uno de los parámetros Dag, Site, Server o Forest , pero no puede usar ninguno de ellos juntos en el mismo comando.
Puede usar el parámetro Filter con cualquiera de los demás parámetros de filtrado.

Identidad de colas

El parámetro Identity usa la sintaxis <básica Cola de servidor>\ <>. Normalmente, este valor identifica de forma única la cola, por lo que no puede usar otros parámetros de filtrado con el parámetro Identity . La excepción es el cmdlet Get-Queue , donde puede usar los parámetros Include y Exclude con el parámetro Identity .

En la tabla siguiente se explica la sintaxis del parámetro Identity en los cmdlets de administración de colas.

Valor de parámetro de identidad Descripción
<Server>\<PersistentQueueName> o <PersistentQueueName> Una cola persistente en el servidor local o especificado.
<PersistentQueueName> es Submission, Unreachableo Poison.
Para obtener más información sobre las colas persistentes, consulte Tipos de colas.
<Server>\<NextHopDomain> o <NextHopDomain> Una cola de entrega en el servidor local o especificado.
<NextHopDomain> es el nombre de la cola del valor de la propiedad NextHopDomain de la cola. Por ejemplo, el espacio de direcciones de un conector de envío, el nombre de un sitio de Active Directory o el nombre de un DAG. Para obtener más información, consulte NextHopSolutionKey.
<Server>\<QueueInteger> o <QueueInteger> Una cola de entrega en el servidor local o especificado.
<QueueInteger> es el valor entero único que se asigna a una cola de entrega o a una cola de instantáneas en la base de datos de la cola. Sin embargo, debe ejecutar el cmdlet Get-Queue para encontrar este valor en las propiedades Identity o QueueIdentity .
<Server>\Shadow\<QueueInteger> o Shadow\<QueueInteger> Una cola de instantáneas en el servidor local o especificado. Para obtener más información sobre las colas de instantáneas y la redundancia de sombras, consulte Redundancia de sombras en Exchange Server.
<Server>\* o * Todas las colas del servidor local o especificado.
Nota: La identidad es un parámetro posicional, lo que significa que puede especificar el valor sin especificar el -Identity calificador. Por ejemplo, los siguientes comandos generan el mismo resultado:
Get-Queue -Identity *
Get-Queue *
Get-Queue

Parámetro de filtro en cmdlets de cola

Puede usar el parámetro Filter en todos los cmdlets de administración de colas para identificar una o varias colas en función de las propiedades de las colas. El parámetro Filter crea un filtro OPath con operadores de comparación para restringir el comando a las colas que cumplen los criterios de filtro. Puede usar el operador -and lógico para especificar varias condiciones para la coincidencia. Este es un ejemplo genérico de la sintaxis:

Get-Queue -Filter "<Property1> -<ComparisonOperator> '<Value1>' -and <Property2> -<ComparisonOperator> '<Value2>'..."

Para obtener una lista completa de las propiedades de cola que puede usar con el parámetro Filter , consulte Propiedades de cola.

Para obtener una lista de los operadores de comparación que puede usar con el parámetro Filter , consulte la sección Operadores de comparación que se usarán al filtrar colas o mensajes en este tema.

Para obtener ejemplos de procedimientos que usan el parámetro Filter para ver y administrar colas, consulte Procedimientos para colas.

Incluir y excluir parámetros en Get-Queue

Puede usar los parámetros Include y Exclude en el cmdlet Get-Queue por sí mismos, con cada othe o con los demás parámetros de filtrado para ajustar los resultados. Por ejemplo, puede:

  • Excluir colas vacías.

  • Excluir colas a destinos externos.

  • Incluya colas que tengan un valor específico de DeliveryType.

Los parámetros Include y Exclude usan las siguientes propiedades de cola para filtrar colas:

Valor Descripción Ejemplo
DeliveryType Incluye o excluye colas basadas en la propiedad DeliveryType que define cómo se transmitirá el mensaje al próximo salto. Los valores válidos se describen en NextHopSolutionKey.
Puede especificar distintos valores separados por comas.
Devuelve todas las colas de entrega en el servidor local donde el próximo salto es un conector de envío hospedado en el servidor local y configurado para el enrutamiento de host inteligente.
Get-Queue -Include SmartHostConnectorDelivery
Empty Incluye o excluye colas vacías. Las colas vacías tienen el valor 0 en la propiedad MessageCount . Devuelve todas las colas del servidor local que contienen mensajes.
Get-Queue -Exclude Empty
External Incluye o excluye las colas que tienen el valor External de la propiedad NextHopCategory .

Las colas externas siempre presentan uno de los siguientes valores para DeliveryType:

  • DeliveryAgent
  • DnsConnectorDelivery
  • NonSmtpGatewayDelivery
  • SmartHostConnectorDelivery

Para obtener más información, consulte NextHopSolutionKey.

Devuelve todas las colas internas del servidor local.
Get-Queue -Exclude External
Internal Este valor incluye o excluye las colas que tienen el valor Internal de la propiedad NextHopCategory . Tenga en cuenta que un mensaje para un destinatario externo puede requerir varios saltos internos antes de llegar a un servidor de puerta de enlace donde se entrega externamente. Devuelve todas las colas internas del servidor local.
Get-Queue -Include Internal

Tenga en cuenta que puede duplicar la funcionalidad de los parámetros Include y Exclude mediante el parámetro Filter . Por ejemplo, los siguientes comandos generan el mismo resultado:

  • Get-Queue -Exclude Empty

  • Get-Queue -Filter "MessageCount -gt 0"

Sin embargo, como puede ver, la sintaxis de los parámetros Include y Exclude es más sencilla y fácil de recordar.

Get-QueueDigest

El cmdlet Get-QueueDigest permite ver información sobre algunas o todas las colas de la organización mediante un único comando. Concretamente, el cmdlet Get-QueueDigest le permite ver información sobre colas basándose en su ubicación en los servidores, en DAG, en sitios de Active Directory o en todo el bosque de Active Directory.

Tenga en cuenta que las colas de un servidor de transporte perimetral suscrito no se incluyen en los resultados. Además, Get-QueueDigest está disponible en un servidor de transporte perimetral, pero los resultados están restringidos a las colas locales en el servidor de transporte perimetral.

Nota:

De forma predeterminada, el cmdlet Get-QueueDigest muestra las colas de entrega que contienen diez o más mensajes y los resultados que tienen entre uno y dos minutos de antigüedad. Si quiere ver las instrucciones para cambiar estos valores predeterminados, consulte Configurar Get-QueueDigest.

En la tabla siguiente se describen los parámetros de filtrado y ordenación que están disponibles en el cmdlet Get-QueueDigest .

Parámetro Descripción
Dag, Server o Site Estos parámetros son mutuamente excluyentes (no se pueden usar en el mismo comando) y establecen el ámbito del cmdlet. Debe especificar uno de estos parámetros o el modificador Bosque . Generalmente, usará el nombre del servidor, el DAG o el sitio de Active Directory, pero puede usar cualquier valor que identifique de forma única el servidor, el DAG o el sitio. Puede especificar varios servidores, DAG o sitios separados por comas.
Forest Este modificador es necesario si no usa los parámetros Dag, Server o Site . No se especifica un valor con este modificador. Con este modificador, obtiene colas de todos los servidores de buzones de Exchange del bosque local de Active Directory. No se puede usar este modificador para ver las colas en bosques remotos de Active Directory.
DetailsLevel Normal es el valor predeterminado. Las propiedades siguientes se devuelven en los resultados:
  • QueueIdentity
  • ServerIdentity
  • MessageCount

Verbose devuelve las siguientes propiedades adicionales en los resultados:

  • DeferredMessageCount
  • LockedMessageCount*
  • IncomingRate
  • OutgoingRate
  • Velocity
  • NextHopDomain
  • NextHopCategory
  • NextHopConnector
  • DeliveryType*
  • Estado
  • RiskLevel*
  • OutboundIPPool*
  • LastError
  • TlsDomain

None omite el nombre de la cola de la columna Detalles en los resultados.

* Estas propiedades están reservadas para uso interno de Microsoft y no se usan en organizaciones locales de Exchange. Para obtener más información sobre todas las propiedades de esta lista, consulte Propiedades de cola.

Filter Filtre las colas en función de las propiedades de la cola como se describe en la sección Filter parameter on queue cmdlets (Filtrar parámetro en cmdlets de cola ). Puede usar cualquiera de las propiedades de cola filtrables como se describe en el tema Propiedades de cola.
GroupBy Agrupa los resultados de la cola. Se pueden agrupar los resultados por una de las siguientes propiedades:
  • DeliveryType
  • LastError
  • NextHopCategory
  • NextHopDomain
  • NextHopKey
  • Estado
  • Nombredeservidor

De forma predeterminada, los resultados se agrupan por NextHopDomain. Para obtener información sobre estas propiedades de cola, consulte Propiedades de cola.

ResultSize Limita los resultados de la cola al valor especificado. Las colas se ordenan en orden descendente en función del número de mensajes de la cola y se agrupan por el valor especificado por el parámetro GroupBy . El valor predeterminado es 1000. Esto significa que, de forma predeterminada, el comando muestra las primeras 1.000 colas agrupadas por NextHopDomain y las ordena de las colas que contienen más mensajes a las que contienen menos.
Timeout El parámetro especifica el número de segundos antes de que se agote el tiempo de espera de la operación. El valor predeterminado es 00:00:10 o 10 segundos.

En este ejemplo se devuelven todas las colas externas no vacías en los servidores denominados Mailbox01, Mailbox02 y Mailbox03.

Get-QueueDigest -Server Mailbox01,Mailbox02,Mailbox03 -Include External -Exclude Empty

Parámetros de filtrado de mensajes

En la tabla siguiente se resumen los parámetros de filtrado que están disponibles en los cmdlets de administración de mensajes.

Cmdlet Parámetros de filtrado Comentarios
Get-Message Filter
Identity
Queue
Servidor
No puede usar los parámetros Filter, Identity o Queue en el mismo comando.
El parámetro Server especifica el servidor donde desea ejecutar el comando. Puede usar los parámetros Server y Filter en el mismo comando.
Remove-Message
Resume-Message
Suspend-Message
Filter
Identity
Servidor
Debe usar el parámetro Identity o el parámetro Filter , pero no puede usarlos en el mismo comando.
El parámetro Server especifica el servidor donde desea ejecutar el comando. Puede usar los parámetros Server y Filter en el mismo comando.
Redirect-Message Servidor Este cmdlet purga los mensajes activos de todas las colas de entrega del servidor especificado, por lo que Server es el único parámetro de filtrado que está disponible. Para obtener más información, consulte Redirección de mensajes en colas.
Export-Message Identity Este parámetro no es realmente un filtro, porque identifica de forma única el mensaje. Para identificar varios mensajes para este cmdlet, use Get-Message y canalice los resultados a Export-Message. Para obtener más información y ejemplos, consulte Exportación de mensajes de colas.

Identidad de mensaje

El parámetro Identity de los cmdlets de administración de mensajes identifica de forma única un mensaje en una o varias colas, por lo que no puede usar ningún otro parámetro de filtrado de mensajes. El parámetro Identity usa la sintaxis <Server>\<Queue>\<MessageInteger>básica .

En la tabla siguiente se describe la sintaxis que puede usar con el parámetro Identity en los cmdlets de administración de mensajes.

**Valor del parámetro Identity Descripción**
<Server>\<Queue>\<MessageInteger> o <Queue>\<MessageInteger> Mensaje de una cola específica en el servidor local o especificado.

<Queue> es la identidad de la cola tal como se describe en la sección Identidad de cola:

  • Nombre de cola persistente
  • Nombre de cola de entrega
  • Entero de cola
  • Identidad de cola de duplicados

<MessageInteger> es el valor entero único que se asigna al mensaje cuando entra por primera vez en la base de datos de cola en el servidor. Si el mensaje se envía a varios destinatarios que requieren varias colas, todas las copias del mensaje en todas las colas de la base de datos de colas tendrán el mismo valor entero. Sin embargo, debe ejecutar el cmdlet Get-Message para buscar este valor en las propiedades Identity o MessageIdentity .

<Server>\*\<MessageInteger>o o *\<MessageInteger><MessageInteger> Todas las copias del mensaje en todas las colas de la base de datos de cola en el servidor local o especificado.

Parámetro de filtro en cmdlets de mensajes

Puede usar el parámetro Filter con los cmdlets Get-Message, Remove-Message, Resume-Message y Suspend-Message para identificar uno o varios mensajes en función de las propiedades de los mensajes. El parámetro Filter crea un filtro OPath con operadores de comparación para restringir el comando a los mensajes que cumplen los criterios de filtro. Puede usar el operador -and lógico para especificar varias condiciones para la coincidencia. Este es un ejemplo genérico de la sintaxis:

Get-Message -Filter "<Property1> -<ComparisonOperator> '<Value1>' -and <Property2> -<ComparisonOperator> '<Value2>'..."

Para obtener una lista completa de las propiedades del mensaje que puede usar con el parámetro Filter , consulte Propiedades del mensaje.

Para obtener una lista de los operadores de comparación que puede usar con el parámetro Filter , consulte la sección Operadores de comparación que se usarán al filtrar colas o mensajes en este tema.

Para obtener ejemplos de procedimientos que usan el parámetro Filter para ver y administrar mensajes, consulte Procedimientos para mensajes en colas.

Parámetro Queue

El parámetro Queue solo está disponible en el cmdlet Get-Message . Puede usar este parámetro para obtener todos los mensajes de una cola específica o todos los mensajes de varias colas mediante el carácter comodín (*). Cuando use el parámetro Queue , use el formato <Server>\<Queue> de identidad de cola como se describe en la sección Identidad de cola de este tema.

Operadores de comparación que puede utilizar al filtrar colas o mensajes

Cuando crea una expresión de filtrado de colas o mensajes usando el parámetro Filter, debe incluir un operador de comparación para el valor de propiedad coincidente. Los operadores de comparación que puede usar y cómo se describen las funciones de cada operador en la tabla siguiente. Para todos los operadores, los valores comparados no distinguen mayúsculas de minúsculas.

Operador Función Ejemplo de código
-eq Coincidencia exacta del valor especificado. Mostrar todas las colas que tienen el estado Reintento:
Get-Queue -Filter "Status -eq 'Retry'"
Mostrar todos los mensajes que tienen el estado Reintento:
Get-Message -Filter "Status -eq 'Retry'"
-ne No coincide con el valor especificado. Mostrar todas las colas que no tienen un estado activo:
Get-Queue -Filter "Status -ne 'Active'"
Mostrar todos los mensajes que no tienen un estado activo:
Get-Message -Filter "Status -ne 'Active'"
-gt Mayor que el entero especificado o el valor de fecha y hora. Mostrar colas que contienen actualmente más de 1000 mensajes:
Get-Queue -Filter "MessageCount -gt 1000"
Mostrar mensajes que actualmente tienen un recuento de reintentos superior a 3:
Get-Message -Filter "RetryCount -gt 3"
-ge Mayor o igual que el entero especificado o el valor de fecha y hora. Mostrar colas que contienen actualmente 1000 o más mensajes:
Get-Queue -Filter "MessageCount -ge 1000"
Mostrar mensajes que actualmente tienen un recuento de reintentos de 3 o más:
Get-Message -Filter "RetryCount -ge 3"
-lt Menor que el entero especificado o el valor de fecha y hora. Mostrar colas que contienen actualmente menos de 1000 mensajes:
Get-Queue -Filter "MessageCount -lt 1000"
Mostrar mensajes que tienen una SCL inferior a 6:
Get-Message -Filter "SCL -lt 6"
-le Menor o igual que el valor entero o de fecha y hora especificado. Mostrar colas que contienen actualmente 1000 mensajes o menos:
Get-Queue -Filter "MessageCount -le 1000"
Mostrar mensajes que tienen una SCL de 6 o menos:
Get-Message -Filter "SCL -le 6"
-like Contiene el texto especificado. Debe incluir el carácter comodín (*) en la cadena de texto. Mostrar colas que tienen un destino a cualquier dominio SMTP que termine en Contoso.com:
Get-Queue -Filter "Identity -like '*contoso.com'"
Mostrar mensajes que tienen un asunto que contiene el texto "préstamo de día de pago":
Get-Message -Filter "Subject -like '*payday loan*'"

Puede especificar un filtro que evalúe varias expresiones mediante el operador -andlógico . Las colas o mensajes deben coincidir con todas las condiciones de filtro que se incluirán en los resultados.

En este ejemplo se muestra una lista de las colas que tienen como destino cualquier nombre de dominio SMTP que termine en contoso.com y que actualmente contienen más de 500 mensajes.

Get-Queue -Filter "Identity -like '*contoso.com*' -and MessageCount -gt 500"

En este ejemplo se muestra una lista de mensajes que se envían desde cualquier dirección de correo electrónico del dominio contoso.com que tienen un valor de SCL mayor que 5.

Get-Message -Filter "FromAddress -like '*Contoso.com*' -and SCL -gt 5"

Parámetros de paginación avanzados

Cuando se usa el Shell de administración de Exchange para ver colas y mensajes en colas, la consulta recupera una página de información a la vez. Los parámetros de paginación avanzada controlan el tamaño de los resultados y el orden en que se muestran los resultados. Todos los parámetros de paginación avanzados son opcionales y se pueden usar con o sin otros parámetros de filtrado en los cmdlets Get-Queue y Get-Message . Si no se especifican parámetros de paginación avanzados, la consulta devolverá los resultados en orden ascendente de identidad.

De forma predeterminada, cuando se especifica un criterio de ordenación, la propiedad Identity siempre se incluye y ordena en orden ascendente, ya que las otras propiedades de cola o mensaje disponibles no son únicas.

Puede usar los parámetros BookmarkIndex y BookmarkObject para marcar una posición en los resultados ordenados. Si el objeto bookmark ya no existe al recuperar la siguiente página de resultados, los resultados comienzan con el elemento más cercano al marcador, que depende del criterio de ordenación que especifique.

Los parámetros de paginación avanzada se describen en la tabla siguiente.

Parámetro Descripción
BookmarkIndex Especifica la posición en los resultados donde comienzan los resultados mostrados. El valor de este parámetro es un índice basado en 1 en los resultados totales. Si el valor es menor que cero o igual a cero, se devuelve la primera página completa de resultados. Si el valor se establece en Int.MaxValue, se devuelve la última página completa de resultados.
No se puede usar este parámetro con el parámetro BookmarkObject .
BookmarkObject Especifica el objeto en los resultados donde se inician los resultados mostrados. Si se especifica un objeto de marcador, éste se usará como punto de inicio para la búsqueda. Se recuperan las filas anteriores o posteriores a ese objeto (en función del valor del parámetro SearchForward ).
No se puede usar este parámetro con el parámetro BookmarkIndex .
IncludeBookmark Especifica si se debe incluir el objeto bookmark en los resultados. Los valores admitidos son:
$true: el objeto bookmark se incluye en los resultados. Este es el valor predeterminado.
$false: el objeto bookmark no se incluye en los resultados. Use este valor al ejecutar una consulta para un tamaño de resultado limitado y, a continuación, especifique el último elemento como marcador para la siguiente consulta. Esto impide que el objeto bookmark se incluya en ambos resultados.
ResultSize Especifica el número de resultados que se van a mostrar por página. Si no se especifica un valor, se usará el tamaño de resultados predeterminado de 1000 objetos. Exchange limita los resultados a 250 000.
ReturnPageInfo Se trata de un parámetro oculto. Devuelve información acerca del número total de resultados y el índice del primer objeto de la página actual. El valor predeterminado es $false.
SearchForward Especifica la dirección de la búsqueda.
Marcador especificado: busque hacia delante o hacia atrás en los resultados relativos al índice de marcador o al objeto.
No se especificó ningún marcador: busque hacia delante o hacia atrás en los resultados del primer o último elemento de los resultados.
Los valores admitidos son:
$true: busque hacia delante desde el primer elemento de los resultados o desde el marcador especificado. Si no hay resultados más allá del marcador, la consulta devuelve la última página completa de resultados. Este es el valor predeterminado.
$false: busque hacia atrás desde el último elemento de los resultados o desde el marcador especificado. Si hay menos de una página completa de resultados más allá del marcador, la consulta devuelve la primera página completa de resultados.
SortOrder Especifica las propiedades del mensaje que controlan el criterio de ordenación de los resultados. El orden en que se especifican las propiedades indica un orden descendente de precedencia (los resultados se ordenan por la primera propiedad y, a continuación, esos resultados se ordenan por la segunda propiedad y son on).
Este parámetro usa la sintaxis : <+|-><Property1>,<+|-><Property2>..., donde + ordena la propiedad en orden ascendente y - ordena la propiedad en orden descendente.
Si no usa este parámetro, los resultados se ordenan por la propiedad Identity en orden ascendente.

En este ejemplo se muestra cómo usar los parámetros de paginación avanzada en una consulta. El comando devuelve los primeros 500 mensajes en el servidor especificado. Los resultados se ordenan primero en orden ascendente por dirección del remitente y, a continuación, en orden descendente por tamaño de mensaje.

Get-Message -Server mailbox01.contoso.com -ResultSize 500 -SortOrder +FromAddress,-Size

En este ejemplo se devuelven los primeros 500 mensajes del servidor especificado en el criterio de ordenación especificado, se establece un objeto bookmark, se excluye el objeto bookmark de los resultados y se recuperan los 500 mensajes siguientes en el mismo criterio de ordenación.

  1. Ejecute el siguiente comando para recuperar la primera página de resultados.

    $Results=Get-Message -Server mailbox01.contoso.com -ResultSize 500 -SortOrder +FromAddress,-Size
    
  2. Para establecer el objeto bookmark, ejecute el siguiente comando para guardar el último elemento de la primera página en una variable.

    $Temp=$Results[$results.length-1]
    
  3. Para recuperar los 500 objetos siguientes en el servidor especificado y excluir el objeto bookmark, ejecute el siguiente comando.

    Get-Message -Server mailbox01.contoso.com -BookmarkObject:$Temp -IncludeBookmark $false -ResultSize 500 -SortOrder +FromAddress,-Size