Inhalt einer Ereignisnachricht

Erfahren Sie mehr über den Inhalt einer Ereignisnachricht.

Jede Ereignisnachricht enthält zwei Hauptteile:

  • Envelope: ein Container für alle Ereignisnachrichten

  • Payload: die Daten aus der Ressource, die die Ereignisnachricht ausgibt

Ereignis-Envelope

Die Attribute für einen Ereignis-Envelope sind für alle Ereignisse identisch. Die Struktur des Envelopes folgt dem branchenüblichen CloudEvents-Format, das von der Cloud Native Computing Foundation (CNCF) gehostet wird.

Eigenschaft Beschreibung
cloudEventsVersion

Die Version der CloudEvents-Spezifikation.

Hinweis: Events verwendet die Spezifikation der Version 0.1 des CloudEvents-Ereignis-Envelopes.

contentType Setzen Sie die Eigenschaft auf application/json. Der Inhaltstyp der Daten, die im Attribut data enthalten sind.
data Die Payload des Ereignisses. Alle Informationen in data stammen aus der Ressource, die das Ereignis ausgibt. Weitere Einzelheiten zur Struktur der Payload finden Sie in der folgenden Tabelle.
eventID

Die UUID des Ereignisses. Diese ID ist keine OCID, sondern nur eine eindeutige ID für das Ereignis.

eventTime Die Uhrzeit des Ereignisses, ausgedrückt im RFC 3339-Zeitstempelformat.
eventType

Der Typ des aufgetretenen Ereignisses. Eine Liste aller Services, die Ereignisse erzeugen, und der Ereignistypen, die diese Services verfolgen, finden Sie unter Services, die Ereignisse erzeugen.

Hinweis: Der Service, der das Ereignis erzeugt, kann auch die Bedeutung eines Feldes hinzufügen, entfernen oder ändern, indem er eine neue Version eines eventType veröffentlicht und das Feld eventTypeVersion verändert.

eventTypeVersion

Die Version des Ereignistyps.

extensions Die OCID des Compartments, aus dem das Ereignis stammt. Wenn das Ereignis aus dem Root-Compartment des Mandanten stammt, gibt dieses Attribut eine Mandanten-OCID an. Dieses Attribut ist in der Oracle Cloud Infrastructure-Implementierung der CloudEvents-Spezifikation erforderlich.
source Die Ressource, die das Ereignis erzeugt hat. Beispiel: Eine autonome Datenbank oder ein Object Storage-Bucket.

Payload

Die Daten in diesen Feldern hängen davon ab, welcher Service das Ereignis erzeugt hat und welcher Ereignistyp definiert wird.

Eigenschaft Beschreibung
compartmentId

Die OCID des Compartments der Ressource, die das Ereignis ausgibt.

compartmentName Der Name des Compartments der Ressource, die das Ereignis ausgibt.
resourceName Der Name der Ressource, die das Ereignis ausgibt.
resourceId

Eine OCID oder eine ID für die Ressource, die das Ereignis ausgibt.

availabilityDomain Die Availability-Domain der Ressource, die das Ereignis ausgibt.
freeFormTags

Freiformtags, die der Ressource hinzugefügt wurden, die das Ereignis ausgibt.

definedTags Definierte Tags, die der Ressource hinzugefügt wurden, die das Ereignis ausgibt.
additionalDetails

Ein Container für Attribute, die für die Ressource eindeutig sind, die das Ereignis ausgibt. Im folgenden Beispiel für ein Bucket-Ereignis enthält die Payload drei Object Storage-Attribute:

  • namespace
  • publicAccessType
  • eTag

Um zu bestimmen, welche Attribute für andere Ressourcen enthalten sind, rufen Sie ein Ereignis ab, oder sehen Sie sich die Referenzbeispiele in Services, die Ereignisse erzeugen an.

Ressourcen-IDs

Die meisten Typen von Oracle Cloud Infrastructure-Ressourcen besitzen eine eindeutige, von Oracle zugewiesene ID, die als Oracle Cloud-ID (OCID) bezeichnet wird. Informationen zum OCID-Format und zu anderen Möglichkeiten zur Identifizierung der Ressourcen finden Sie unter Ressourcen-IDs.

Ein Beispielereignis

Das folgende Beispiel zeigt ein Bucket-Ereignis, das von Object Storage ausgegeben wird.

{
	"cloudEventsVersion": "0.1",
	"eventID": "<unique_ID>",
	"eventType": "com.oraclecloud.objectstorage.deletebucket",
	"source": "objectstorage",
	"eventTypeVersion": "1.0",
	"eventTime": "2019-01-10T21:19:24Z",
	"contentType": "application/json",
	"extensions": {
		"compartmentId": "ocid1.compartment.oc1..<unique_ID>"
	},
	"data": {
		"compartmentId": "ocid1.compartment.oc1..<unique_ID>",
		"compartmentName": "example_name",
		"resourceName": "my_bucket",
		"resourceId": "ocid1.compartment.oc1..<unique_ID>",
		"availabilityDomain": "NfHZ:PHX-AD-2",
		"freeFormTags": {
			"Department": "Finance"
		},
		"definedTags": {
			"Operations": {
				"CostCenter": "42"
			}
		},
		"additionalDetails": {
			"namespace": "example_namespace",
			"publicAccessType": "NoPublicAccess",
			"eTag": "f8ffb6e9-f602-460f-a6c0-00b5abfa24c7"
		}
	}
}