메시지 추적 로그 검색Search message tracking logs

메시지 추적 기능은 메시지가 사서함 서버 및 Edge 전송 서버의 전송 파이프라인을 통해 흐를 때 메시지 작업을 기록합니다. Exchange 관리 셸에서 Get-MessageTrackingLog cmdlet을 사용하여 특정 검색 조건에 따라 메시지 추적 로그의 항목을 검색할 수 있습니다. 예를 들면 다음과 같습니다.Message tracking records the message activity as mail flows through the transport pipeline on Mailbox servers and Edge Transport servers. You can use the Get-MessageTrackingLog cmdlet in the Exchange Management Shell to search for entries in the message tracking log by using specific search criteria. For example:

  • 사용자가 특정 받는 사람에게 보낸 메시지에서 어떤 작업이 수행되었는지 알아봅니다.Find out what happened to a message that was sent by a user to a specific recipient.

  • 메시지에 대해 처리 되는 메일 흐름 규칙 (전송 규칙이 라고도 함)을 확인 합니다.Find out if a mail flow rule (also known as a transport rule) acted on a message.

  • 인터넷 보낸 사람이 보낸 메시지가 사용자의 Exchange 조직으로 전송되는지여부를 확인합니다.Find out if a message sent from an Internet sender made it into your Exchange organization.

  • 지정된 기간 중에 지정된 사용자가 보낸 모든 메시지를 찾습니다.Find all messages sent by a specified user during a specified time period.

시작하기 전에 알아야 할 내용What do you need to know before you begin?

  • 예상 완료 시간: 10분Estimated time to complete: 10 minutes

  • 이러한 절차를 수행하려면 먼저 사용 권한을 할당받아야 합니다. 필요한 사용 권한을 확인하려면 다음을 참조하세요. 메일 흐름 사용 권한 항목의 "메시지 추적" 항목You need to be assigned permissions before you can perform this procedure or procedures. To see what permissions you need, see the "Message tracking" entry in the Mail flow permissions topic.

  • 메시지 추적 로그를 검색하려면 Microsoft Exchange Transport Log Search 서비스가 실행 중이어야 합니다. 이 서비스를 사용하지 않도록 설정하거나 중지하면 메시지 추적 로그를 검색하거나 배달 보고서를 실행할 수 없습니다. 그러나 이 서비스를 중지해도 Exchange의 다른 기능에는 영향을 주지 않습니다.Searching the message tracking logs requires that the Microsoft Exchange Transport Log Search service is running. If you disable or stop this service, you can't search the message tracking logs or run delivery reports. However, stopping this service does not affect other features in Exchange.

  • Get-MessageTrackingLog cmdlet의 결과에 표시된 필드 이름은 메시지 추적 로그 파일에 사용되는 실제 필드 이름과 유사합니다. 가장 큰 차이점은 다음과 같습니다.The field names displayed in the results from the Get-MessageTrackingLog cmdlet are similar to the actual field names found in the message tracking log files. The biggest differences are:

    • 필드 이름에서 대시가 제거됩니다.Dashes are removed from the field names. 예를 들어, 내부 메시지 id 는로 InternalMessageId표시 됩니다.For example, internal-message-id is displayed as InternalMessageId.

    • 날짜 및 시간 필드는로 Timestamp표시 됩니다.The date-time field is displayed as Timestamp.

    • 받는 사람 주소 필드는로 Recipients표시 됩니다.The recipient-address field is displayed as Recipients.

    • 보낸 사람-주소 필드는로 Sender표시 됩니다.The sender-address field is displayed as Sender.

  • 메시지 추적 로그의 date-time 필드에는 정보가 UTC(Coordinated Universal Time)로 저장됩니다.The date-time field in the message tracking log stores information in Coordinated Universal Time (UTC). 그러나 검색을 수행 하는 데 사용 하는 컴퓨터의 지역별 날짜/시간 형식에서 Start 또는 End 매개 변수에 대해 날짜 및 시간 검색 조건을 입력 해야 합니다.However, you need to enter your date-time search criteria for the Start or End parameters in the regional date-time format of the computer that you're using to perform the search.

  • Get-MessageTrackingLog cmdlet을 사용하여 다른 Exchange 서버에서 메시지 추적 로그 파일을 복사한 다음 검색할 수는 없습니다. 또한 기존 메시지 추적 로그 파일을 수동으로 저장하면 해당 파일의 날짜-시간 스탬프가 변경되어 Exchange에서 메시지 추적 로그를 검색하는 데 사용하는 쿼리 논리가 손상됩니다.You can't copy the message tracking log files from another Exchange server and then search them by using the Get-MessageTrackingLog cmdlet. Also, if you manually save an existing message tracking log file, the change in the file's date-time stamp breaks the query logic that Exchange uses to search the message tracking logs.

  • Exchange 2016에서 get-messagetrackinglog cmdlet은 동일한 Active Directory 사이트에 있는 Exchange 2013 사서함 서버 및 Exchange 2010 허브 전송 서버의 메시지 추적 로그를 검색할 수 있습니다.In Exchange 2016, the Get-MessageTrackingLog cmdlet is able to search the message tracking logs on Exchange 2013 Mailbox servers and Exchange 2010 Hub Transport servers in the same Active Directory site. Exchange 2019에서 get-messagetrackinglog cmdlet은 동일한 Active Directory 사이트에 있는 exchange 2016 및 Exchange 2013 사서함 서버의 메시지 추적 로그를 검색할 수 있습니다.In Exchange 2019, the Get-MessageTrackingLog cmdlet is able to search the message tracking logs on Exchange 2016 and Exchange 2013 Mailbox servers in the same Active Directory site.

  • 이 항목의 절차에 적용할 수 있는 바로 가기 키에 대한 자세한 내용은 Exchange 관리 센터의 바로 가기 키을 참조하세요.For information about keyboard shortcuts that may apply to the procedures in this topic, see Keyboard shortcuts in the Exchange admin center.

문제가 있나요? Exchange 포럼에서 도움을 요청하세요. Exchange Server, Exchange Online 또는 Exchange Online Protection 포럼을 방문하세요.Having problems? Ask for help in the Exchange forums. Visit the forums at: Exchange Server, Exchange Online, or Exchange Online Protection.

Exchange 관리 셸을 사용하여 메시지 추적 로그 검색Use the Exchange Management Shell to search the message tracking logs

특정 이벤트에 대한 메시지 추적 로그 항목을 검색하려면 다음 구문을 사용합니다.To search the message tracking log entries for specific events, use the following syntax.

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>]

서버에서 최근 메시지 추적 로그 항목 1,000개를 보려면 다음 명령을 실행합니다.To view the 1000 most recent message tracking log entries on the server, run the following command:

Get-MessageTrackingLog

이 예제에서는 메시지 보낸 사람이 pat@contoso.com인 모든 FAIL 이벤트에 대해 로컬 서버의 메시지 추적 로그에서 2015년 3월 28일 오전 8시에서 2015년 3월 28일 오후 5시 사이의 모든 항목을 검색합니다.This example searches the message tracking logs on the local server for all entries from 3/28/2015 8:00 AM to 3/28/2015 5:00 PM for all FAIL events where the message sender was 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"

다음 구문을 사용합니다.Use the following syntax.

Get-MessageTrackingLog <SearchFilters> | <Format-Table | Format-List> [<FieldNames>] [<OutputFileOptions>]

이 예제에서는 다음 검색 조건을 사용하여 메시지 추적 로그를 검색합니다.This example searches the message tracking logs using the following search criteria:

  • 처음 1,000개 Send 이벤트에 대한 결과를 반환합니다.Return results for the first 1,000 Send events.

  • 결과를 목록 형식으로 표시합니다.Display the results in the list format.

  • 또는 Send Recipient로 시작 하는 필드 이름만 표시 합니다.Display only those field names that begin with Send or Recipient.

  • 다음과 같은 새 파일에 출력을 씁니다.D:\Send Search.txtWrite the output to a new file named D:\Send Search.txt

Get-MessageTrackingLog -EventId Send | Format-List Send*,Recipient* | Set-Content -Path "D:\Send Search.txt"

Exchange 관리 셸을 사용하여 메시지 추적 로그에서 여러 서버의 메시지 항목 검색Use the Exchange Management Shell to search the message tracking logs for message entries on multiple servers

일반적으로 MessageID: 헤더 필드의 값은 메시지가 Exchange 조직 전체를 이동하는 과정에서 일정하게 유지됩니다. 이 속성 이름은 큐 뷰어 유틸리티에서는 InternetMessageId 이고 메시지 추적 로그 보기 유틸리티에서는 MessageId 입니다. 특정 메시지의 MessageID: 값을 확인한 후에는 Exchange 조직의 모든 사서함 서버에 있는 메시지 추적 로그에서 해당 메시지에 대한 정보를 검색할 수 있습니다.Typically, the value in the MessageID: header field remains constant as the message travels throughout the Exchange organization. This property is named InternetMessageId in queue viewing utilities, and MessageId in the message tracking log viewing utilities. After you have determined the MessageID: value of a specific message, you can search for information about that message in the message tracking logs on every Mailbox server in your Exchange organization.

모든 사서함 서버 및 Exchange 2010 허브 전송 서버에서 특정 메시지에 대한 모든 메시지 추적 로그 항목을 검색하려면 다음 구문을 사용합니다.To search all message tracking log entries for a specific message across all Mailbox servers and Exchange 2010 Hub Transport servers, use the following syntax.

$Servers = Get-ExchangeServer;  $Servers | where {$_.isHubTransportServer -eq $true -or $_.isMailboxServer -eq $true} | Get-MessageTrackingLog -MessageId <MessageID>  | Select-Object <CommaSeparatedFieldNames>  | Sort-Object -Property <FieldName>

이 예제에서는 다음 검색 조건을 사용하여 모든 사서함 서버 및 Exchange 2010 허브 전송 서버에서 메시지 추적 로그를 검색합니다.This example searches the message tracking logs on all Mailbox servers and Exchange 2010 Hub Transport server by using the following search criteria:

  • MessageID:<ba18339e-8151-4ff3-aeea-87ccf5fc9796@mailbox01.contoso.com>이 인 메시지와 관련 된 항목을 찾습니다.Find any entries related to a message that has a MessageID: value of <ba18339e-8151-4ff3-aeea-87ccf5fc9796@mailbox01.contoso.com>. 꺾쇠 괄호 문자 (< >)는 생략할 수 있습니다.Note that you can omit the angle bracket characters (< >). 생략하지 않을 경우 전체 MessageID: 값을 따옴표로 묶어야 합니다.If you don't, you need to enclose the entire MessageID: value in quotation marks.

  • 각 항목에 대해 필드 date-time, server-hostname, client-hostname, source, event-idrecipient-address 를 표시합니다.For each entry, display the fields date-time, server-hostname, client-hostname, source, event-id, and recipient-address.

  • 결과를 date-time 필드 기준으로 정렬합니다.Sort the results by the date-time field.

$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

EAC를 사용하여 메시지 추적 로그 검색Use the EAC to search the message tracking logs

EAC(Exchange 관리 센터)의 관리자용 배달 보고서 기능을 사용하여 메시지 추적 로그에서 조직의 특정 사서함이 보냈거나 받은 메시지에 대한 정보를 검색할 수 있습니다. 자세한 내용은 배달 보고서로 메시지 추적을 참조하세요.You can use the Delivery Reports for administrators feature in the Exchange admin center (EAC) to search the message tracking logs for information about messages sent by or received by a specific mailbox in your organization. For more information, see Track messages with delivery reports.