none
HILFE: Mails einer Schnellkampagne werden mehrfach verschickt

    Frage

  • Hallo zusammen,

    ich habe ein schwerwiegendes Problem mit CRM 2016 (on premise) und server side sync:

    Wir versenden unsere aktuellen Angebote über Schnellkampagnen / Marketingliste. Dabei werden rund 1100 Kunden kontaktiert. Seit den letzten beiden Kampagnen hatte ich den Umstand, dass sich einige Kunden verärgert gemeldet haben, dass die Mail teilweise bis zu sieben mal gesendet wurde.

    Wenn ich mir per erweiterter Suche die Mails nach Status "Senden" bzw. "Senden ausstehend" anzeigen lasse, sehe ich in den E-Mail Details, dass teilweise schon 4 Sendeversuche unternommen wurden. Ich habe den Kunden kontaktiert und er hat mich informiert, dass er die Mail auch vier mal bekommen hat. Irgendwie scheint MS CRM anzunehmen, dass die Mail nicht versendet werden konnte, obwohl dies erfolgreich war.

    Gibt es irgendeine Möglichkeit, die SMTP Ergebnisse zu sehen?

    Viele Grüße

    Mittwoch, 14. September 2016 14:36

Alle Antworten

  • Hallo,

    du kannst die Ereignisse im Trace des Servers sehen. Diese einfach nach den SMTP-Ereignissen filtern.


    Viele Grüße

    Michael Sulz
    MVP für Microsoft Dynamics CRM
    Blog
    Website XING LinkedIn Facebook Twitter

    Donnerstag, 15. September 2016 05:48
    Moderator
  • Danke für deine Antwort.

    Leider kann ich das kaum testen... Ich habe eine Marketingliste erstellt, in der ich 1000 mal Mitglied bin, um nicht gegen "echte" Kunden zu testen.

    Merkwürdigerweise empfange ich die Mails exakt einmal...

    Hast du eine Idee, was die Ursache für den Fehler sein könnte?

    Viele Grüße

    Donnerstag, 15. September 2016 08:10
  • Hallo,

    eine Idee könnte ein Timing Problem mit dem Mailserver sein, aber das ist nur eine der Möglichkeiten.

    Zum Testen würde ich einfach eine Marketingliste mit wenig Mittgliedern erstellen. Es kann aber sein, das dieses Problem nur bei vielen Mitgliedern in einer Marketingliste auftritt, das musst du ausprobieren.

    Eventuell stehen auch Meldungen im Event Log der Server, die könntest du auch noch überprüfen.


    Viele Grüße

    Michael Sulz
    MVP für Microsoft Dynamics CRM
    Blog
    Website XING LinkedIn Facebook Twitter


    Freitag, 16. September 2016 07:56
    Moderator
  • Ich habe den Trace jetzt mal über die Powershell eingeschaltet und mich selbst 1000-fach als Kontakt angelegt... Mal sehen was dabei rauskommt.

    Was ich allerdings schon sehen kann:
    Wir lassen ja eine Aktivitäten-ID erzeugen nach dem Muster CRM:[0-9]{7}.
    Da kommt dann bspw. das bei raus: CRM:0001018. Die Nachricht mit dieser ID ist zweimal im unter Status "Senden ausstehend" mit dem Hinweis 

    Diese Nachricht wurde noch nicht übermittelt. 1 Versuch(e) wurde(n) bereits unternommen.

    Außerdem steht im Trace-Verzeichnis folgende Mitteilung, aber auch schon vor dem Versenden:

    # ServerRole: AppServer, AsyncService, DiscoveryService, ApiServer, HelpServer, DeploymentService, SandboxServer, DeploymentManagementTools, VssWriter, EmailConnector

    [2016-09-16 15:41:43.652] Process: w3wp |Organization:00000000-0000-0000-0000-000000000000 |Thread:   74 |Category: Platform.Sdk |User: 00000000-0000-0000-0000-000000000000 |Level: Error |ReqId: 1a4897e2-3ee2-4dd3-823b-4138cc63f936 | TraceSource.TraceData  ilOffset = 0x68
    at TraceSource.TraceData(TraceEventType eventType, Int32 id, Object data)  ilOffset = 0x68
    at LegacyDiagnosticTrace.TraceEvent(TraceEventType type, Int32 code, String msdnTraceCode, String description, TraceRecord trace, Exception exception, Object source)  ilOffset = 0x0
    at ExceptionUtility.ThrowHelper(Exception exception, TraceEventType eventType, TraceRecord extendedData)  ilOffset = 0x31
    at AuthorizationBehavior.Authorize(MessageRpc& rpc)  ilOffset = 0x4E
    at ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc)  ilOffset = 0x267
    at MessageRpc.Process(Boolean isOperationContextSet)  ilOffset = 0x65
    at ChannelHandler.DispatchAndReleasePump(RequestContext request, Boolean cleanThread, OperationContext currentOperationContext)  ilOffset = 0x239
    at ChannelHandler.HandleRequest(RequestContext request, OperationContext currentOperationContext)  ilOffset = 0xEA
    at ChannelHandler.AsyncMessagePump(IAsyncResult result)  ilOffset = 0x39
    at ChannelHandler.OnAsyncReceiveComplete(IAsyncResult result)  ilOffset = 0x19
    at AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)  ilOffset = 0x0
    at AsyncResult.Complete(Boolean completedSynchronously)  ilOffset = 0xC2
    at ReceiveItemAndVerifySecurityAsyncResult`2.InnerTryReceiveCompletedCallback(IAsyncResult result)  ilOffset = 0x56
    at AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)  ilOffset = 0x0
    at AsyncResult.Complete(Boolean completedSynchronously)  ilOffset = 0xC2
    at AsyncQueueReader.Set(Item item)  ilOffset = 0x2F
    at InputQueue`1.Dispatch()  ilOffset = 0x129
    at ScheduledOverlapped.IOCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)  ilOffset = 0x22
    at IOCompletionThunk.UnhandledExceptionFrame(UInt32 error, UInt32 bytesRead, NativeOverlapped* nativeOverlapped)  ilOffset = 0x5
    at _IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)  ilOffset = 0x1E
    ><TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Error"><TraceIdentifier>http://msdn.microsoft.com/de-DE/library/System.ServiceModel.Diagnostics.ThrowingException.aspx</TraceIdentifier><Description>Eine Ausnahme wird ausgelöst.</Description><AppDomain>/LM/W3SVC/1/ROOT-1-131184364333211088</AppDomain><Exception><ExceptionType>System.ServiceModel.FaultException, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType><Message>Der Zugriff wurde verweigert.</Message><StackTrace>   bei System.ServiceModel.Dispatcher.AuthorizationBehavior.Authorize(MessageRpc&amp;amp; rpc)
    >   bei System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc&amp;amp; rpc)
    >   bei System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
    >   bei System.ServiceModel.Dispatcher.ChannelHandler.DispatchAndReleasePump(RequestContext request, Boolean cleanThread, OperationContext currentOperationContext)
    >   bei System.ServiceModel.Dispatcher.ChannelHandler.HandleRequest(RequestContext request, OperationContext currentOperationContext)
    >   bei System.ServiceModel.Dispatcher.ChannelHandler.AsyncMessagePump(IAsyncResult result)
    >   bei System.ServiceModel.Dispatcher.ChannelHandler.OnAsyncReceiveComplete(IAsyncResult result)
    >   bei System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
    >   bei System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)
    >   bei System.ServiceModel.Channels.SecurityChannelListener`1.ReceiveItemAndVerifySecurityAsyncResult`2.InnerTryReceiveCompletedCallback(IAsyncResult result)
    >   bei System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
    >   bei System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)
    >   bei System.Runtime.InputQueue`1.AsyncQueueReader.Set(Item item)
    >   bei System.Runtime.InputQueue`1.Dispatch()
    >   bei System.Runtime.IOThreadScheduler.ScheduledOverlapped.IOCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
    >   bei System.Runtime.Fx.IOCompletionThunk.UnhandledExceptionFrame(UInt32 error, UInt32 bytesRead, NativeOverlapped* nativeOverlapped)
    >   bei System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)
    ></StackTrace><ExceptionString>System.ServiceModel.FaultException: Der Zugriff wurde verweigert.</ExceptionString></Exception></TraceRecord>


    Freitag, 16. September 2016 13:45
  • Ich konnte den Fehler beim Massenversand reproduzieren: Die Mail wurde, man sieht es ja an der generierten ID, zwei mal Versand. Im Mailobjekt in CRM steht jetzt mittlerweile:

    Diese Nachricht wurde noch nicht übermittelt. 2 Versuch(e) wurde(n) bereits unternommen.

    In den Logs ist nichts zu finden...

    Kann man dem System irgendwie beibringen, dass der Versand jeder Mail nicht öfter als einmal "versucht" werden soll?

    Freitag, 16. September 2016 14:37
  • Hallo,

    mir würde ja folgender FEhlertext zu denken geben: <Message>Der Zugriff wurde verweigert.</Message>.

    Hier scheint es noch ein Berechtigungsproblem zu geben.


    Viele Grüße

    Michael Sulz
    MVP für Microsoft Dynamics CRM
    Blog
    Website XING LinkedIn Facebook Twitter

    Montag, 19. September 2016 07:04
    Moderator