Exchange Server: registros de seguimiento de mensajes de búsqueda
El seguimiento de mensajes registra la actividad de mensajes como flujos de correo mediante la canalización de transporte en servidores de buzón y servidores de transporte perimetral. Puede usar el cmdlet Get-MessageTrackingLog en el Shell de administración de Exchange para buscar entradas en el registro de seguimiento de mensajes mediante criterios de búsqueda específicos. Por ejemplo:
Obtenga información sobre qué ha sucedido con un mensaje que se ha enviado mediante un usuario a un destinatario específico.
Averigüe si una regla de flujo de correo (también conocida como regla de transporte) ha actuado en un mensaje.
Obtenga información sobre si un mensaje se ha enviado desde un remitente de Internet realizado en la organización de Exchange.
Busque todos los mensajes que ha enviado un usuario específico durante un período especificado de tiempo.
¿Qué necesita saber antes de empezar?
Tiempo estimado para finalizar: 10 minutos
Deberá tener asignados permisos antes de poder llevar a cabo este procedimiento o procedimientos. Para ver qué permisos necesita, consulte el Entrada "Seguimiento de mensajes" en el tema Permisos de flujo del correo.
Para realizar una búsqueda en los registros de seguimiento de mensajes el servicio de búsqueda del registro de transporte de Microsoft Exchange debe estar en ejecución. Si deshabilita o detiene este servicio, no se puede realizar ninguna búsqueda en los registros de seguimiento de mensajes ni ejecutar informes de entrega. En cambio, la detención de este servicio no afecta a otras características de Exchange.
Los nombres de campo que se muestran en los resultados del cmdlet Get-MessageTrackingLog son similares a los nombres de campo reales que se han detectado en los archivos de registro de seguimiento de mensajes. Las diferencias más destacables son:
Los guiones se quitan de los nombres de campo. Por ejemplo, internal-message-id se muestra como
InternalMessageId
.El campo de fecha y hora se muestra como
Timestamp
.El campo recipient-address se muestra como
Recipients
.El campo sender-address se muestra como
Sender
.
El campo date-time del registro de seguimiento de mensajes almacena la información con el formato de hora universal coordinada (UTC). Sin embargo, debe especificar los criterios de búsqueda de fecha y hora para los parámetros Start o End en el formato de fecha y hora regional del equipo que usa para realizar la búsqueda.
No puede copiar archivos del registro de seguimiento de mensajes de otro servidor de Exchange y luego buscarlos mediante el cmdlet Get-MessageTrackingLog. Además, si guarda manualmente un archivo de registro de seguimiento de mensajes existente, el cambio en la marca de fecha y hora del archivo rompe la lógica de la consulta que Exchange usa para buscar los registros de seguimiento de mensajes.
En Exchange 2016, el cmdlet Get-MessageTrackingLog puede buscar en los registros de seguimiento de mensajes en los servidores de buzones de Exchange 2013 y en los servidores de transporte del centro de Exchange 2010 en el mismo sitio de Active Directory. En Exchange 2019, el cmdlet Get-MessageTrackingLog puede buscar en los registros de seguimiento de mensajes en servidores de buzones de Exchange 2016 y Exchange 2013 en el mismo sitio de Active Directory.
Para obtener información acerca de los métodos abreviados de teclado aplicables a los procedimientos de este tema, consulte Métodos abreviados de teclado en el Centro de administración de Exchange.
Sugerencia
¿Problemas? Solicite ayuda en los foros de Exchange. Visite los foros en Exchange Server, Exchange Online, o Exchange Online Protection.
Usar el Shell de administración de Exchange para buscar los registros de seguimiento de mensajes
Para buscar eventos concretos en las entradas del registro de seguimiento de mensajes, use la siguiente sintaxis.
Get-MessageTrackingLog [-Server <ServerIdentity>] [-ResultSize <Integer> | Unlimited] [-Start <DateTime>] [-End <DateTime>] [-EventId <EventId>] [-InternalMessageId <InternalMessageId>] [-MessageId <MessageId>] [-MessageSubject <Subject>] [-Recipients <RecipientAddress1,RecipientAddress2...>] [-Reference <Reference>] [-Sender <SenderAddress>]
Para ver las 1 000 entradas más recientes del registro de seguimiento de mensajes en el servidor, ejecute el siguiente comando:
Get-MessageTrackingLog
En este ejemplo se busca en los registros de seguimiento de mensajes del servidor local todas las entradas del 28/3/2015 de 8:00 a.m. a 3/28/2015 5:00 p.m. para todos los eventos FAIL en los que el remitente del mensaje era pat@contoso.com.
Get-MessageTrackingLog -ResultSize Unlimited -Start "3/28/2015 8:00AM" -End "3/28/2015 5:00PM" -EventId "Fail" -Sender "pat@contoso.com"
Uso del Shell de administración de Exchange para controlar la salida de una búsqueda del registro de seguimiento de mensajes
Use la siguiente sintaxis.
Get-MessageTrackingLog <SearchFilters> | <Format-Table | Format-List> [<FieldNames>] [<OutputFileOptions>]
En este ejemplo se buscan los registros de seguimiento de mensajes con los siguientes criterios:
Devolver resultados de los primeros 1 000 eventos Send.
Mostrar los resultados en el formato de lista.
Mostrar solo los nombres de campo que comienzan por
Send
oRecipient
.Escribir la salida en un nuevo archivo denominado
D:\Send Search.txt
Get-MessageTrackingLog -EventId Send | Format-List Send*,Recipient* | Set-Content -Path "D:\Send Search.txt"
Uso del Shell de administración de Exchange para buscar registros de seguimiento de mensajes de las entradas de mensajes en varios servidores
Normalmente, el valor en el campo de encabezado MessageID: permanece constante a medida que el mensaje recorre la organización de Exchange. Esta propiedad se denomina InternetMessageId en las utilidades de vista de la cola y MessageId en las utilidades de vista del registro de seguimiento de mensajes. Una vez determinado el valor MessageID: de un mensaje específico, puede buscar información sobre dicho mensaje en los registros de seguimiento de mensajes en todos los servidores de buzones de correo de la organización de Exchange.
Para buscar todas las entradas del registro de seguimiento de mensajes de un mensaje concreto en todos los servidores de buzones de correo y servidores de transporte de concentradores de Exchange 2010, use la siguiente sintaxis.
$Servers = Get-ExchangeServer; $Servers | where {$_.isHubTransportServer -eq $true -or $_.isMailboxServer -eq $true} | Get-MessageTrackingLog -MessageId <MessageID> | Select-Object <CommaSeparatedFieldNames> | Sort-Object -Property <FieldName>
En este ejemplo se buscan los registros de seguimiento de mensajes en todos los servidores de buzones de correo y servidores de transporte de concentradores de Exchange 2010 con los siguientes criterios de búsqueda:
Busque las entradas relacionadas con un mensaje que tenga un valor MessageID: de
<ba18339e-8151-4ff3-aeea-87ccf5fc9796@mailbox01.contoso.com>
. Tenga en cuenta que puede omitir los caracteres de corchetes angulares (<
>
). Si no lo hace, deberá incluir todo el valor de MessageID: entre comillas.Para cada entrada, muestre los campos date-time, server-hostname, client-hostname, source, event-id y recipient-address.
Ordenar los resultados por el campo date-time.
$Servers = Get-ExchangeServer; $Servers | where {$_.isHubTransportServer -eq $true -or $_.isMailboxServer -eq $true} | Get-MessageTrackingLog -MessageId ba18339e-8151-4ff3-aeea-87ccf5fc9796@mailbox01.contoso.com | Select-Object Timestamp,ServerHostname,ClientHostname,Source,EventId,Recipients | Sort-Object -Property Timestamp
Uso de EAC para buscar los registros de seguimiento de mensajes
Puede usar la característica Informes de entrega para administradores en el Centro de administración de Exchange (EAC) para buscar en los registros de seguimiento de mensajes información sobre los mensajes enviados o recibidos por un buzón de correo específico de la organización. Para obtener más información, vea Seguimiento de mensajes con informes de entrega.