Microsoft Office Outlook 로깅을 사용하여 Microsoft Exchange Server 2007 가용성 서비스의 문제를 해결하는 방법

 

마지막으로 수정된 항목: 2011-02-16

Microsoft Exchange Server 2007 가용성 서비스는 GetUserAvailabilityResponse라는 XML 메시지 형식으로 약속 있음/없음 요청의 결과를 반환합니다. GetUserAvailabilityResponse 메시지는 Microsoft Office Outlook 2007 클라이언트에서 약속 있음/없음 요청에 포함된 모든 사용자의 가용성 상태 및 모임 약속 있음/없음 정보를 표시하는 데 사용됩니다.

가용성 서비스에서 요청된 사용자에 대한 약속 있음/없음 정보가 검색되지 않는 경우 Outlook 2007에서는 실패한 시도를 정보 없음으로 표시합니다. 이 응답 메시지는 정보가 반환되지 않는 이유를 확인할 때는 도움이 되지 않습니다. 그러나 이 메시지에는 오류 원인을 진단하는 데 사용할 수 있는 정보가 포함되어 있습니다. Outlook 2007의 로깅 기능을 사용하여 진단 용도로 응답 메시지를 표시할 수 있습니다.

Outlook 2007 로깅 사용 방법

Outlook 2007에서 로깅 사용

  1. Outlook 열기

  2. 도구를 클릭한 다음 옵션을 클릭합니다.

  3. 기타 탭을 클릭한 다음 고급 옵션을 클릭합니다.

  4. 로깅 사용(문제 해결) 확인란을 클릭하여 사용하도록 설정한 후 확인을 두 번 클릭합니다.

  5. 닫은 다음 Outlook을 시작합니다.

중요

문제 해결을 완료한 후에는 로깅을 해제해야 합니다. 로깅을 해제하지 않으면 프로그램에서 로그 파일을 계속 만듭니다. 성능 및 보안상의 이유로 필요한 경우에만 로깅 기능을 설정해야 합니다.

가용성 서비스 로그 파일은 Outlook 사용자의 %Temp%\olkas 폴더에 있습니다. Outlook에서는 수행하는 작업에 따라 서로 다른 세 가지 유형의 로그 파일을 생성합니다. 각 파일 이름에는 고유하게 두 글자 또는 세 글자로 된 코드와 날짜 및 시간 스탬프가 포함됩니다. 세 가지 로그 유형은 다음과 같습니다.

  • OOF(부재 중)

  • MS(모임 제안)

  • FB(약속 있음/없음)

다음은 대략적으로 3월 5일 오전 11시에 생성된 약속 있음/없음 로그 파일의 예입니다.

20070305-110303994-fb.log

약속 있음/없음 로그 파일은 일정 정리 탭에서 모임 요청에 사용자를 한 명 이상 추가할 때마다 생성됩니다. 로그 파일에는 클라이언트에서 가용성 서비스로 보내는 GetUserAvailabilityRequest XML 메시지가 포함됩니다. 또한 이 파일에는 가용성 서비스에서 반환된 해당 GetUserAvailabilityResponse XML 메시지도 포함됩니다. 클라이언트에서 요청을 보낼 때마다 새로운 약속 있음/없음 로그 파일이 생성됩니다.

다음은 약속 있음/없음 로그 파일에 포함되는 GetUserAvailabilityResponse 메시지의 예입니다.

<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Header><t:ServerVersionInfo MajorVersion="8" MinorVersion="0" MajorBuildNumber="685" MinorBuildNumber="24" xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types" /></soap:Header><soap:Body><GetUserAvailabilityResponse xmlns="https://schemas.microsoft.com/exchange/services/2006/messages"><FreeBusyResponseArray><FreeBusyResponse><ResponseMessage ResponseClass="Error"><MessageText>Mailbox logon failed., inner exception: Cannot open mailbox /o=domain/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=user.</MessageText><ResponseCode>ErrorMailboxLogonFailed</ResponseCode><DescriptiveLinkKey>0</DescriptiveLinkKey><MessageXml><ExceptionType xmlns="https://schemas.microsoft.com/exchange/services/2006/errors">Microsoft.Exchange.InfoWorker.Common.Availability.MailboxLogonFailedException</ExceptionType><ExceptionCode xmlns="https://schemas.microsoft.com/exchange/services/2006/errors">5008</ExceptionCode></MessageXml></ResponseMessage><FreeBusyView><FreeBusyViewType xmlns="https://schemas.microsoft.com/exchange/services/2006/types">None</FreeBusyViewType></FreeBusyView></FreeBusyResponse></FreeBusyResponseArray></GetUserAvailabilityResponse></soap:Body></soap:Envelope>

응답 메시지에는 많은 정보가 포함됩니다. 그러나 다음 섹션에만 필요한 오류 정보가 포함됩니다.

MessageText: 오류에 대한 정보 포함

ResponseCode: 오류를 발생시킨 예외 포함

ExceptionCode: 오류에 대한 웹 응답 코드 포함

일반적으로 MessageText 블록에는 약속 있음/없음 조회에 실패한 이유를 설명하는 포괄적인 메시지가 포함됩니다. ResponseCode 및 ExceptionCode 값은 웹 예외 코드에 해당합니다. REF _Ref160587194 \h \* MERGEFORMAT 오류! 참조 원본을 찾을 수 없습니다. 다음 세 가지 섹션에는 오류 문제를 해결하는 데 필요한 정보가 포함됩니다.

특정 오류 문제 해결

다음 예에서는 몇 가지 일반적인 가용성 조회 오류와 이러한 오류가 Outlook 약속 있음/없음 로깅에 어떻게 표시되는지를 보여줍니다. 명확한 전달을 위해 이 예에는 이 항목의 "Outlook 2007 로깅 사용 방법" 섹션에서 언급한 로그의 세 가지 섹션만 포함되어 있습니다.

사서함 로그온 실패

가용성 서비스에서는 사서함에 직접 액세스하여 Exchange 2007 사서함에서 약속 있음/없음 정보를 검색합니다. 로그온 실패로 인해 가용성 서비스에서 사서함에 액세스할 수 없는 경우 서비스에서 정보를 검색할 수 없습니다. 이 경우 다음 로그 항목이 생성됩니다.

<MessageText>Mailbox logon failed., inner exception: Cannot open mailbox /o=domain/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=user.</MessageText>
<ResponseCode>ErrorMailboxLogonFailed</ResponseCode>
<ExceptionCode xmlns="https://schemas.microsoft.com/exchange/services/2006/errors">5008</ExceptionCode>

이 예에서 MessageText 블록에는 오류와 열리지 않은 사서함 ID에 대한 간단한 설명이 포함됩니다. 로그온 실패는 여러 가지 상황에서 발생할 수 있습니다. 이러한 상황으로는 사서함 저장소 서비스 실패 및 분리된 데이터베이스가 있습니다. 이 오류가 기록되어 있으면 대상 사용자의 사서함 상태를 확인해야 합니다.

사용 권한 오류

가용성 서비스에서는 Exchange 2007 사서함 소유자가 자신의 일정에 다양한 액세스 수준을 부여할 수 있는 일정 권한 모델을 지원합니다. 기본적으로 모든 사용자는 약속 있음/없음 정보를 보는 데 필요한 최소의 사용 권한을 가지고 있어야 합니다. 그러나 Outlook에서 명시적 사용자만 액세스하도록 사용 권한을 변경할 수 있습니다.

사용자가 모임 요청에 참석자를 추가했으나 이 참석자가 해당 사용자의 액세스를 허용하지 않는 일정 권한을 설정한 경우에는 가용성 서비스에서 참석자의 약속 있음/없음 정보를 검색할 수 없습니다.

Outlook 2007 클라이언트는 약속 있음/없음 표시줄에서 이 오류를 정보 없음으로 렌더링하므로 Outlook 로깅을 사용하지 않고는 이 메시지를 사용 권한 문제로 진단하기 어렵습니다. 예를 들어 이 상황에서는 다음 메시지가 기록됩니다.

<MessageText>Caller does not have access to free busy data.</MessageText>
<ResponseCode>ErrorNoFreeBusyAccess</ResponseCode>
<ExceptionCode xmlns="https://schemas.microsoft.com/exchange/services/2006/errors">5037</ExceptionCode>

이 오류가 기록되면 대상 사서함 소유자에게 일정 권한을 확인하도록 해야 합니다.

프록시 오류

가용성 서비스는 로컬 Active Directory 사이트에서 모든 Exchange 2007 사서함 일정에 액세스할 수 있습니다. 가용성 서비스에서 다른 Active Directory 사이트에 있는 사서함의 약속 있음/없음 정보에 대한 서비스 요청을 받은 경우 이 서비스는 해당 Active Directory 사이트의 가용성 서비스로 요청을 프록시합니다.

다른 가용성 서비스로 약속 있음/없음 요청을 프록시하지 못한 경우 원격 가용성 서비스의 오류 정보가 응답 메시지에 포함됩니다. 예를 들어 다음 메시지가 기록됩니다.

<MessageText>The proxy request failed because the remote server returned an error., inner exception: Microsoft.Exchange.InfoWorker.Common.Availability.MailboxLogonFailedException:Mailbox logon failed., inner exception: Cannot open mailbox /o=domain/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Recipients/cn=user.</MessageText>
<ResponseCode>ErrorProxyRequestProcessingFailed</ResponseCode>
<ExceptionCode xmlns="https://schemas.microsoft.com/exchange/services/2006/errors">5016</ExceptionCode>

이 오류는 원격 가용성 서비스에서 대상 사서함을 열 수 없음을 나타냅니다. 첫 번째 예의 오류와 유사합니다. 이 경우 대상 사용자의 사서함이 사용 가능한 상태인지 확인해야 합니다.

원격 가용성 서비스 실패로 인해 가용성 서비스에서 약속 있음/없음 정보에 대한 요청을 프록시할 수 없는 경우 응답 메시지에는 다음과 유사한 스택 추적 정보가 포함될 수 있습니다.

<MessageText>System.Net.WebException: Unable to connect to the remote server ---&gt; System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket&amp; socket, IPAddress&amp; address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception&amp; exception)   --- End of inner exception stack trace ---   at System.Web.Services.Protocols.WebClientAsyncResult.WaitForResponse()   at System.Web.Services.Protocols.WebClientProtocol.EndSend(IAsyncResult asyncResult, Object&amp; internalAsyncState, Stream&amp; responseStream)   at System.Web.Services.Protocols.SoapHttpClientProtocol.EndInvoke(IAsyncResult asyncResult)   at Microsoft.Exchange.InfoWorker.Common.Availability.Proxy.Service.EndGetUserAvailability(IAsyncResult asyncResult)   at Microsoft.Exchange.InfoWorker.Common.Availability.ProxyWebRequest.CompleteRequest(). The request information is ProxyWebRequest type = CrossSite, url = https://Servername.domain.com/EWS/Exchange.asmx
Mailbox list = &lt;mod4user9&gt;SMTP:user@domain.com, Parameters: windowStart = 2/20/2007 8:00:00 AM, windowEnd = 3/22/2007 8:00:00 AM, MergedFBInterval = 30, RequestedView = Detailed
.</MessageText>
<ResponseCode>ErrorProxyRequestProcessingFailed</ResponseCode>
<ExceptionCode xmlns="https://schemas.microsoft.com/exchange/services/2006/errors">5016</ExceptionCode>

이 오류는 원격 가용성 서비스에서 프록시된 요청을 처리하지 않음을 나타냅니다. 응답 메시지에는 필요한 경우 원격 서버에서 추가 디버깅 작업에 사용할 수 있는 스택 추적 정보도 포함됩니다. 이 오류는 원격 서버에서 기본 웹 사이트가 일시 중지되었기 때문에 생성됩니다.

Exchange 2007에서는 포리스트 간에 약속 있음/없음 정보를 공유할 수 있습니다. 적절한 구성을 사용하여 가용성 서비스에서 원격 포리스트의 다른 가용성 서비스로 포리스트 간 요청을 프록시할 수 있습니다. 가용성 서비스에서 다른 포리스트로 요청을 프록시할 수 없는 경우 응답 메시지에는 다음과 유사한 정보가 포함될 수 있습니다.

<MessageText>Unable to send cross-forest request for mailbox &lt;Fred Meyers&gt;SMTP:user@domain.com because of invalid configuration., inner exception: Configuration information for forest/domain domain.com could not be found in Active Directory.</MessageText>
<ResponseCode>ErrorProxyRequestProcessingFailed</ResponseCode>
<ExceptionCode xmlns="https://schemas.microsoft.com/exchange/services/2006/errors">5016</ExceptionCode>

이 오류는 포리스트 간 약속 있음/없음 정보 공유 기능을 tailspintoys.com 포리스트와 함께 사용하도록 설정하는 데 필요한 구성이 불완전하거나 잘못 구성되었음을 나타냅니다.

레거시 약속 있음/없음 오류

가용성 서비스는 약속 있음/없음 공용 폴더에서 레거시 Exchange 사서함 소유자에 대한 약속 있음/없음 정보를 검색합니다. 이는 Outlook에서 사용되는 방법과 같습니다. 가용성 서비스가 약속 있음/없음 공용 폴더에서 레거시 사서함의 약속 있음/없음 정보를 검색할 수 없는 경우 다음 오류가 기록됩니다.

<MessageText>The remote server returned an error: (503) Server Unavailable.. The request information is http://ServerName.Domain.com/public/?Cmd=freebusy&amp;start=2007-02-20T14:00:00Z&amp;end=2007-03-22T14:00:00Z&amp;interval=30&amp;u=username@domain.com.</MessageText>
<ResponseCode>ErrorPublicFolderRequestProcessingFailed</ResponseCode>
<ExceptionCode xmlns="https://schemas.microsoft.com/exchange/services/2006/errors">5017</ExceptionCode>

참고

이 메시지에서 서버 이름은 실제 서버 이름을 나타냅니다.

이 오류는 서버 이름 서버에서 분리된 공용 폴더 저장소로 인해 503 서비스를 사용할 수 없음 오류가 발생했음을 나타냅니다.