Пример #1
0
        // Token: 0x0600003A RID: 58 RVA: 0x00003ACC File Offset: 0x00001CCC
        private void LogMessageTrackingInfo(string remoteHostName, IPAddress localIP, string localServerName, MapiEvent mapiEvent, MailSubmissionResult result, string latencyString)
        {
            SubmissionRecord.Drop(this.successHistory, this.failureHistory, mapiEvent, result);
            string text = this.FormatMapiEventInfo(mapiEvent);
            MsgTrackMapiSubmitInfo msgTrackInfo;

            if (result.ErrorCode == 0U)
            {
                MailboxTransportSubmissionService.StoreDriverTracer.ServiceTracer.TracePass <string>(MailboxTransportSubmissionService.StoreDriverTracer.MessageProbeActivityId, (long)this.GetHashCode(), "Submission succeeded for {0}", text);
                msgTrackInfo = new MsgTrackMapiSubmitInfo(text, null, remoteHostName, localIP, localServerName, result.Sender, result.From, result.MessageId, MailboxTransportSubmissionAssistant.ItemEntryId(mapiEvent), Components.Configuration.LocalServer.TransportServer.MessageTrackingLogSubjectLoggingEnabled ? result.Subject : "[Undisclosed]", latencyString, result.DiagnosticInfo, null != mapiEvent, result.ExternalOrganizationId, result.OrganizationId, result.RecipientAddresses, MailDirectionality.Originating, result.NetworkMessageId, result.OriginalClientIPAddress);
            }
            else
            {
                string text2 = HResult.GetStringForErrorCode(result.ErrorCode);
                if (!string.IsNullOrEmpty(result.DiagnosticInfo))
                {
                    text2 = "Error: " + text2 + ", Diagnostic Information: " + result.DiagnosticInfo;
                }
                MailboxTransportSubmissionService.StoreDriverTracer.ServiceTracer.TracePass <string, string>(MailboxTransportSubmissionService.StoreDriverTracer.MessageProbeActivityId, (long)this.GetHashCode(), "Submission failed for {0}, error: {1}", text, text2);
                if (!HResult.IsHandled(result.ErrorCode) && !MailboxTransportSubmissionAssistant.ShouldLogTemporaryFailures)
                {
                    return;
                }
                msgTrackInfo = new MsgTrackMapiSubmitInfo(text, null, remoteHostName, localIP, localServerName, result.Sender, result.MessageId, MailboxTransportSubmissionAssistant.ItemEntryId(mapiEvent), latencyString, text2, HResult.IsHandled(result.ErrorCode), null != mapiEvent, result.ExternalOrganizationId, result.OrganizationId, result.RecipientAddresses, MailDirectionality.Originating, result.NetworkMessageId);
            }
            if (11U == result.ErrorCode)
            {
                MessageTrackingLog.TrackThrottle(MessageTrackingSource.STOREDRIVER, msgTrackInfo, result.Sender, result.MessageId, MailDirectionality.Originating);
                return;
            }
            MessageTrackingLog.TrackMapiSubmit(msgTrackInfo);
        }
Пример #2
0
 // Token: 0x06000025 RID: 37 RVA: 0x00003428 File Offset: 0x00001628
 public void OnSkipEvent(MapiEvent mapiEvent, Exception exception)
 {
     try
     {
         MailboxTransportSubmissionAssistant.eventCounterToLatencyMap.Remove(mapiEvent.EventCounter);
         string    text = this.FormatMapiEventInfo(mapiEvent);
         Exception ex   = exception;
         if (ex != null)
         {
             while (ex.InnerException != null)
             {
                 ex = ex.InnerException;
             }
         }
         string text2 = "Error: SkipEvent";
         if (ex != null)
         {
             text2 = text2 + ", Diagnostic Information: " + ex.GetType().Name;
         }
         MailboxTransportSubmissionService.StoreDriverTracer.ServiceTracer.TraceFail <string, string>(MailboxTransportSubmissionService.StoreDriverTracer.MessageProbeActivityId, (long)this.GetHashCode(), "{0} will be skipped due to error {1}", text, text2);
         MsgTrackMapiSubmitInfo msgTrackInfo = new MsgTrackMapiSubmitInfo(text, null, string.Empty, StoreDriverSubmission.LocalIPAddress, Components.Configuration.LocalServer.TransportServer.Name, string.Empty, string.Empty, mapiEvent.ItemEntryId, string.Empty, text2, true, false);
         MessageTrackingLog.TrackMapiSubmit(msgTrackInfo);
     }
     catch (Exception arg)
     {
         MailboxTransportSubmissionService.StoreDriverTracer.ServiceTracer.TraceFail <Exception>(MailboxTransportSubmissionService.StoreDriverTracer.MessageProbeActivityId, (long)this.GetHashCode(), "Unexpected exception {0} during skipped event logging", arg);
     }
 }