Was gebaut ist
Ein Ereignis hält fest, dass etwas zu einer bestimmten Zeit von einer bestimmten Quelle gemeldet wurde, und wie sehr man der Meldung traut. Es wird nie überschrieben, sondern ergänzt: Eine spätere Meldung hebt eine frühere nicht auf, sie tritt neben sie.
Was dazugehört
Begriff · Ereignis
Eine beobachtete Änderung mit Identität, Zeitpunkt und Herkunft. Doppelte oder verspätete Zustellung muss behandelt werden.
Ein Ereignis hat eine Kennung, einen Typ, eine Quelle, ein Subjekt, auf das es sich bezieht, die Zeit des Geschehens, die Zeit der Aufnahme, einen Ort, wo einer bekannt ist, ein Vertrauen mit seinen Beiträgen und einen Verweis auf die unveränderte Rohmeldung. Der Umschlag folgt der Spezifikation CloudEvents; die Felder beschreibt die Referenz.
Meldungen aus verschiedenen Systemen werden dafür in dieselbe Form übersetzt. Die Rohmeldung bleibt erhalten, damit sich jedes Ereignis bis zu ihr zurückverfolgen lässt.
Zwei Zeiten
Begriff · Ontologie
Die gemeinsame Beschreibung einer Organisation: Objekttypen mit Eigenschaften, Beziehungen, Regeln und Handlungen, als Daten mit Version, Herkunft und Recht.
Die Zeit des Geschehens sagt, wann etwas war, und wird zur Gültigkeitszeit der Ontologie. Die Zeit der Aufnahme sagt, wann das System es erfuhr, und wird zur Erfassungszeit. Ein Ereignis, das später ankommt, als es geschah, ordnet sich in die Vergangenheit ein und ändert nur die Lagen mit späterem Wissensstand.
Doppel, Reihenfolge, Verspätung
Dasselbe Geschehen kommt oft mehrfach an. Eine Nummer je Subjekt entscheidet, ob ein Ereignis neu ist, ein Doppel oder zu früh, und ein Ereignis nach dem Wasserzeichen wird als Korrektur abgelegt, nicht verworfen. So wirkt jedes Ereignis genau einmal in der Ontologie, auch wenn es mehrfach ankommt.
Von vielen Ereignissen zu einer Lage
Aus Ereignissen wird die Lage: ARGUS gruppiert nahe beieinanderliegende zu Gruppen, ordnet sie Objekten zu, schreibt ihr Vertrauen fort und bildet daraus das Bild zu einem Zeitpunkt. Das einzelne Ereignis bleibt dabei sichtbar, und jede Aussage der Lage führt zu den Ereignissen zurück, auf denen sie beruht.
Wovon es sich unterscheidet
Ein Ereignis ist kein Zustand: Es beschreibt, dass etwas gemeldet wurde, nicht, wie es jetzt ist. Es ist kein Protokolleintrag, der festhält, was das System selbst getan hat, und keine Nachricht an eine Person. Und es ist keine Tatsache: Es trägt ein Vertrauen, das auch niedrig sein darf.
Grenze
- Grenze
- Die Verarbeitung von Ereignissen ist als Bauweise beschrieben. Ein laufendes System mit Eingängen, Normalisierung und Lage besteht nicht.
Fragen
- Was geschieht mit einem Ereignis, dem man nicht traut?
- Es bleibt mit niedrigem Vertrauen und seinen Gründen im System. Ob es in eine Entscheidungsvorlage eingeht, entscheidet die zuständige Person.
- Kann ein Ereignis gelöscht werden?
- Nur über eine Löschung mit Regel, Freigabe und Nachweis, etwa weil eine Frist abläuft. Sonst wird es ergänzt, nicht entfernt.
Quellen
- CloudEvents SpecificationCNCF. Umschlag mit den Pflichtfeldern id, source, specversion und type.
- RFC 3339: Date and Time on the Internet: TimestampsIETF. Schreibweise der Zeitangaben.