Zum Hauptinhalt springen

Überwachung und Fehlersuche

Automatisierung ist von Natur aus unsichtbar: Wenn sie läuft, merkt man nichts, und wenn nicht, passiert einfach gar nichts. Auf dieser Seite geht es darum, trotzdem zu sehen, was los ist.

Was SHIPM8 festhält

Jedes Mal, wenn ein Ereignis auf eines Ihrer Abonnements passt, schreibt SHIPM8 einen Eintrag ins Ausführungsprotokoll — ob der Lauf geklappt hat oder nicht. Er enthält:

  • welches Abonnement gepasst hat und welches Ereignis es ausgelöst hat;
  • wann es lief und wie lange es dauerte;
  • das Ergebnis — erfolgreich, teilweise erfolgreich (manche Aktionen liefen, manche nicht) oder fehlgeschlagen;
  • eine Zeile je Aktion, mit eigener Dauer, eigenem Ergebnis und etwaiger Fehlermeldung;
  • die eingegangenen Daten und das erzeugte Ergebnis.

Ereignisse, die auf kein Abonnement passen, werden nicht protokolliert — es gibt nichts zu berichten.

Dieses Protokoll liegt auf der SHIPM8-Seite. Wenden Sie sich also an den Support, wenn Sie etwas nachschlagen wollen. Nennen Sie Name oder trigger identifier des Abonnements und ungefähr, wann es hätte laufen sollen — dann lässt sich sagen, ob das Ereignis ankam, ob es passte und was jede Aktion getan hat.

Selbst mitlesen

Praktisch behalten Sie eine Automatisierung im Blick, indem Sie ihr eine Aktion Admin notification geben (siehe Aktionstypen). Sie mailt Ihnen, sobald das Abonnement läuft, und weil Betreff und Text Vorlagen sind, nehmen Sie genau die Werte hinein, die Sie interessieren. Es ist auch der schnellste Weg, die Form der Ereignisdaten zu sehen, während Sie Bedingungen und Feldpfade bauen.

Lassen Sie sie nach dem Produktivstart noch eine Weile drin und entfernen Sie sie, wenn Sie der Automatisierung trauen.

Wenn nichts passiert

Fast jedes „mein Abonnement läuft nicht“ ist einer dieser Punkte, grob nach Häufigkeit:

  1. Der trigger identifier passt nicht. Es ist Freitext — ein Tippfehler, ein fehlendes $ oder ein falscher Objekt-System-code, und das Abonnement wird schlicht nie gefunden. Prüfen Sie ihn Zeichen für Zeichen gegen Ereignistypen.
  2. Der trigger type passt nicht zum Identifier. Beides muss zusammenstimmen — …_add braucht Create, …_finalized braucht Generic und so weiter. Was wozu gehört, zeigt die Tabelle unter Ein Abonnement anlegen.
  3. Das Abonnement liegt außerhalb seiner Laufzeit. Ein Starts on in der Zukunft oder ein Ends on in der Vergangenheit schaltet es stillschweigend ab.
  4. Eine Bedingung schließt es aus. Bedingungen sind streng: Ein Feldpfad, den es in den Ereignisdaten nicht gibt, lässt die Bedingung scheitern, statt ignoriert zu werden. Schicken Sie sich mit einer Aktion Admin notification das rohe Ereignis und vergleichen Sie.
  5. Das Ereignis ist nie eingetreten. Nicht jede Änderung in der App löst eines aus — prüfen Sie, ob es das Ereignis für den gedachten Moment überhaupt gibt.
  6. Die Aktion hat keine Einstellungen. Eine Aktion mit leeren Werten tut nichts.

Wenn etwas passiert, aber nicht das Erwartete

  • Eine Aktion scheiterte, die anderen liefen. Das ist so gewollt: Es werden alle Aktionen versucht. Soll der spätere Schritt nur laufen, wenn der frühere geklappt hat, teilen Sie sie auf und nutzen Verkettung.
  • Ein Folgeereignis feuerte nie. Trigger feuern nur, wenn die Aktion ein Ergebnis geliefert hat. Kein Ergebnis — weil die Aktion scheiterte oder nichts zu tun war — heißt kein Folgeereignis.
  • Es lief öfter als gedacht. Manche Ereignisse feuern für denselben Datensatz wiederholt: Hafenbesuchszeiten werden immer wieder korrigiert, und eine Aktion, die einen Datensatz ändert, kann ihr eigenes Änderungsereignis auslösen. Bedingungen sind die Lösung.
  • Es lief später als gedacht. Alles hier läuft im Hintergrund, geben Sie ihm also einen Moment. Dauerhaft lange Verzögerungen sollten Sie melden.

Bevor Sie ein laufendes Abonnement ändern

  • Notieren Sie die Einstellungen, die Sie ersetzen — ein Typwechsel an einer Aktion löscht ihre Konfiguration.
  • Ein Ends on-Datum ist besser als Löschen: Es schaltet die Automatisierung ab, behält aber die Konfiguration, sodass Sie sie zurückholen können.
  • Ein gelöschtes Abonnement nimmt alle seine Aktionen mit.