In this post, we are going to look at the Mailbox Details log file that can be used when troubleshooting Server Side Synchronization and App for Outlook scenarios. Thanks again to Cody Dinwiddie on our Dynamics 365 Support team for helping put this information together.

Now, if you don't know, Server-Side Sync is processed by the Async Service, which means it can sometimes be difficult to find enough detail to troubleshoot ACT and Email synchronization issues. Mailbox alerts is always a great place to start but it can really only give you a few pieces of information, such as if a Test and Enable was successful or what errors the mailbox is running into. However, this will not show me other key information, such as when the next sync cycle is for the mailbox. In most cases, this is the information I am looking for and it is one of the most common questions I receive.


To find additional information, the mailbox record does have a way to get this data by selecting Download Mailbox Details on the ribbon of the appropriate mailbox record.


Once you click to download this .log file, open it up with a text editor like Notepad. Note: For a Dynamics 365 Online instance, all times will be in UTC.


Let's break down the sections:


Mailbox Async Processing State

mailboxid : 9fb6600b-0965-e811-a97f-000d4a161089

(GUID of the mailbox record)

hostid: Null         

(This will contain the name of the async server processing the request if mid-process)

processingstatecode : 0         

(This will be 1 if async is currently processing this mailbox and you see a hostid populated)

processinglastattemptedon : 12/3/2018 3:23:36 PM       

(This is the last time the mailbox attempted to process)




Mailbox Synchronization Methods

(EmailRouter here means Server-Side Sync)

incomingemaildeliverymethod : EmailRouter

outgoingemaildeliverymethod : EmailRouter

actdeliverymethod : EmailRouter




Mailbox Enabled State

(These states are tied to the test/enable being successful from a server-side sync perspective)

enabledforincomingemail : True

enabledforoutgoingemail : True

enabledforact : True




Mailbox Idle State

(Shows how many times the mailbox was processed with no Email items or Appointments, Contacts and Tasks to synchronize)

noemailcount : 3        

(This means 3 sync cycles ago, an email was promoted from the Exchange mailbox into Dynamics)

noactcount : 2      

(This means 2 sync cycles ago, an Appointment, Contact or Task was promoted from the Exchange mailbox into Dynamics)




Mailbox Backoff Parameters

(Shows when the mailbox is scheduled to process next. These are the fields I use the most)

postponemailboxprocessinguntil : 12/3/2018 3:28:37 PM

(This value controls when the Asynchronous Processing Service will run on this mailbox, which actually performs a synchronization)

postponesendinguntil : 11/29/2018 6:07:17 PM    

(If this value is the same or before the postponemailboxprocessinguntil value, asynchronous emails will be sent from Dynamics on the next sync)

receivingpostponeduntil : 12/3/2018 3:28:37 PM 

(If this value is the same or before the postponemailboxprocessinguntil value, emails in Exchange will attempt to sync with Dynamics)

receivingpostponeduntilforact : 12/3/2018 3:25:34 PM         

(If this value is the same or before the postponemailboxprocessinguntil value, Appointments, Contacts and Tasks will attempt to sync with Dynamics)




Mailbox Test and Enable Parameters

testemailconfigurationscheduled : False         

(This will be true if test/enable is pending)

testemailconfigurationretrycount : 0       

(This enumerates how many times the test/enable process has attempted to retry in the event of a failure)

testmailboxaccesscompletedon : 11/29/2018 6:07:22 PM         

(This provides the time the last test/enable was run on this mailbox)

postponetestemailconfigurationuntil : 11/29/2018 6:12:22 PM         

(If this value is the same or before the postponemailboxprocessinguntil value, test/enable will be run on the mailbox)




Mailbox Last Sync Cycle Information

lastsuccessfulsynccompletedon : 12/3/2018 3:23:37 PM         

(This provides the time that the mailbox last performed a sync without running into an exception/ error)

lastsyncerror: Null     

(This will provide limited exception details of what error occurred on the last mailbox sync attempt, if one occurred)

lastsyncerrorcode: Null         

(This will provide the exception code for the last error, if available)

lastsyncerrorcount : 0   

(This will enumerate how many consecutive times the same error has occurred for the mailbox synchronization)

lastsyncerroroccurredon : 10/17/2018 5:41:58 PM         

(This provides the time the last error occurred for the mailbox. If this time is before the lastsuccessfulsynccompletedon and processinglastattemptedon times, no error happened on the last sync)

itemsprocessedforlastsync : 2       

(This enumerates how many Exchange items were successfully promoted on the last sync cycle)

itemsfailedforlastsync : 0  

(This enumerates how many items succeeded the promotion criteria, but failed to promote to Dynamics)




Email Server Profile Details

(This section provides details on the Email Server Profile configured to this mailbox)

Email Server Profile General Settings (servertype: 1 is others, 0 is Exchange)

servertype : 0      

(0 is Exchange, 1 is others, such as POP3)

useautodiscover : True       

(False indicates that the EWS URL is explicitly defined in the Email Server Profile)

maxconcurrentconnections : 108       

(This value defines how many simultaneous connections to Exchange that this Email Server Profile can handle)

minpollingintervalinminutes : 0      

(This value determines how often Asynchronous processing is attempted for a mailbox in minutes. The minimum value is 5, so “0” in this context means that mailboxes sync every 5 minutes)




Email Server Profile Incoming Email Settings

incomingauthenticationprotocol : AutoDetect     

(This value defines what authentication method is being used, such as through an impersonation account or via mailbox credentials etc..)

incomingcredentialretrieval : S2S

(This defines the authentication credentials being used, such as S2S (server-to-server), OAuth, etc..)

incominguseimpersonation : False      

(This defines if an account with Application Impersonation is being used for incoming email synchronization)

incomingusessl : True   

(This defines if synchronization of incoming items uses certificates for encryption)

incomingportnumber : 443     

(This defines the port being used for incoming synchronization)




Email Server Profile Outgoing Email Settings

outgoingauthenticationprotocol : AutoDetect      

(This value defines what authentication method is being used, such as through an impersonation account, via mailbox credentials etc..)

outgoingcredentialretrieval : S2S         

(This defines the authentication credentials being used, such as S2S (server-to-server), OAuth, etc..)

outgoinguseimpersonation : False     

(This defines if an account with Application Impersonation is being used for outgoing email synchronization)

outgoingusessl : True      

(This defines if synchronization of outgoing items uses certificates for encryption)

outgoingportnumber : 443    

(This defines the port being used for outgoing synchronization)




Recent Trace Log details

(This section provides the last 10 mailbox specific logs for the associated mailbox. We will not be covering troubleshooting of the different errors here. Some of these will be more straightforward and some will require more telemetry review from a Microsoft resource. That is where the MailboxId and ActivityId can be used to correlate to additional logging.)

tracecode : 126

errortypedisplay : ExchangeSyncServerServiceError

errordetails : T:391

ActivityId: a2559263-94de-4886-bc28-5fc7511d4f5f

>Exception : Unhandled exception:

Exception type: System.Net.WebException

Message: The remote server returned an error: (503) Server Unavailable.   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)   at Microsoft.Exchange.WebServices.Data.EwsHttpWebRequest.Microsoft.Exchange.WebServices.Data.IEwsHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)   at Microsoft.Exchange.WebServices.Data.ServiceRequestBase.EndGetEwsHttpWebResponse(IEwsHttpWebRequest request, IAsyncResult asyncResult) -- End stack trace -- Exception type: Microsoft.Exchange.WebServices.Data.ServiceRequestException

Message: The request failed. The remote server returned an error: (503) Server Unavailable.   at Microsoft.Exchange.WebServices.Data.ServiceRequestBase.EndGetEwsHttpWebResponse(IEwsHttpWebRequest request, IAsyncResult asyncResult)   at Microsoft.Exchange.WebServices.Data.SimpleServiceRequestBase.EndInternalExecute(IAsyncResult asyncResult)   at...


tracecode : 2

errortypedisplay : UnknownIncomingEmailIntegrationError

errordetails : ActivityId: 08657d6f-7e7b-424c-a974-6de3d4le2ae4a

>Error : ?Mailbox move in progress. Try again later., Cannot open mailbox.ErrorMailboxMoveInProgress0


tracecode : 52

errortypedisplay : IncomingEmailServerServiceError

errordetails : ActivityId: b66413dd-c51e-43d1-9404-adb044abf655

>Error : System.Net.WebException: The request failed with HTTP status 503: Service Unavailable.

at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)

at System.Web.Services.Protocols.SoapHttpClientProtocol.EndInvoke(IAsyncResult asyncResult)

at Microsoft.Crm.Asynchronous.EmailConnector.ExchangeServiceBinding.EndFindItem(IAsyncResult asyncResult)

at Microsoft.Crm.Asynchronous.EmailConnector.FindItemsStep.EndCall()

at Microsoft.Crm.Asynchronous.EmailConnector.ExchangeIncomingEmailProviderStep.EndOperation()


Thanks for reading!


Aaron Richards