Änderung der Fehlerbehandlung bei rtEvent#PushEvents in Adobe Campaign V8
In Adobe Campaign V8 gibt die rtEvent#PushEvents-Methode beim Empfang ungültiger Payloads, wie z. B. Werte für das wishedChannel, die außerhalb des zulässigen Bereichs liegen, keinen Fehler mehr zurück. Stattdessen werden falsche Daten in der RT-Datenbank gespeichert, was zu Synchronisierungsfehlern in Workflows wie mcExec führt. Um dies zu beheben, validieren Sie Payloads vor dem Senden, korrigieren Sie ungültige RT-Einträge, überspringen Sie fehlerhafte Ereignisse während der Synchronisierung und überwachen Sie Workflows auf wiederkehrende Probleme.
Beschreibung description
Umgebung
- Produkt: Adobe Campaign Classic gehostet
- Version: v8 (Server-Build 8.6.2, Konsolen-Build 8.6.2)
- instance: stage
Problem/Symptom
-
In Adobe Campaign V7 gab die
rtEvent#PushEvents-Methode einen Fehler zurück, wenn die Payload ungültige Daten enthielt (z. B. einen Wert außerhalb des Bereichs für daswishedChannel). -
In Adobe Campaign v8 hat sich dieses Verhalten geändert:
- Der SOAP-Aufruf gibt weder einen Fehler noch eine Erfolgsantwort zurück.
- Das System speichert ungültige Daten in der RT-Instanzdatenbank.
- Synchronisierungs-Workflows, wie z. B.
mcExec, in verbundenen Marketing-Instanzen schlagen aufgrund der ungültigen Daten fehl.
Beispiel:
-
Eine Payload mit
wishedChannel="999"überschreitet das Limit für 8-Bit-Ganzzahlen. Das System speichert einen Umbruchwert (231), ohne einen Fehler auszulösen. -
Dies führt zu Synchronisierungsfehlern wie:
BAS-010043 Wert '231' liegt außerhalb des für Zahlen vom Typ 'Ganzzahl (8 Bit)' zulässigen Bereichs (von -128 bis 127).
Auflösung resolution
Um zu verhindern, dass Probleme durch ungültige Payloads ohne ordnungsgemäße Fehlerbehandlung verarbeitet werden, befolgen Sie die folgenden Best Practices:
-
Stellen Sie sicher, dass die an die Methode
rtEvent#PushEventsgesendeten Daten mit den erwarteten Typen und Wertebereichen übereinstimmen.- Bestätigen Sie beispielsweise, dass Felder wie
wishedChannelinnerhalb gültiger Grenzen liegen (z. B. -128 bis 127 für eine 8-Bit-Ganzzahl).
- Bestätigen Sie beispielsweise, dass Felder wie
-
Wenn bereits ungültige Daten aufgenommen wurden:
- Korrigieren Sie die betroffenen Datensätze in der RT-Datenbank manuell, bevor Sie Synchronisierungs-Workflows ausführen.
- Alternativ können Sie die Synchronisierung für Ereignisse überspringen, die ungültige Daten enthalten.
-
Überwachen Sie Synchronisierungs-Workflows, z. B.
mcExec, auf wiederkehrende Fehler, die durch ungültige Payloads verursacht werden. -
Bleiben Sie über zukünftige Updates von Adobe Campaign v8 auf dem Laufenden, die diesem Verhalten entgegenwirken können.