Table of Contents |
---|
...
CNCF Cloud Event alignment
Introduction
CloudEvents is a specification for describing event data in common formats to provide interoperability across services, platforms and systems.
- These cloud events will be applied to all the internal and external events we have in CPS , NCMP and DMI Plugin.
- Cloud events will be taking care of the fields which are part of kafka headers or part of the actual payload ( fields other than "data" are sent as kafka headers )
- These CNCF cloud events will be applied to all the events listed in above sections ( LCM , DMI Data AVC etc. )
Library References
- https://github.com/cloudevents/sdk-java
- https://mvnrepository.com/artifact/io.cloudevents
- Examples : https://github.com/cloudevents/sdk-java/tree/main/examples/kafka/src/main/java/io/cloudevents/examples/kafka
...
Before | After | CloudeEvent builder method | Example Value | Notes |
---|---|---|---|---|
eventId | id | .withId() | Mandatory | |
eventSource | source | .withSource() | Mandatory | |
N/A | specversion (default 1.0) | .v1() | 1.0 | Mandatory - This is the version of the cloud events |
eventType | type | .withType() | Mandatory | |
eventTime | time | .withTime() | Optional | |
eventSchema | dataschema | .withDataSchema() | Optional includes the version of the schema | |
datacontenttype | withDataContentType() | application/json | Optional | |
eventCorrelationId | correlationid | .withExtension() | Optional This will be part of the extensions field in the cloud events and all the restrictions of the attribute field naming applies to it. i.e these fields will be in the small case. This is marked as optional as it applies to the event which has this field. | |
event | data | .withData(json TBC) | Mandatory actual event/payload now would be under "data" field. |
...