Skip to content

Add status_change topic support to EventGate #151

@oto-macenauer-absa

Description

@oto-macenauer-absa

Feature Description

Add a new status_change event topic to EventGate to support event-driven monitoring of application status changes across CPS. This will allow downstream consumers to subscribe to and process status change events published by various CPS applications.

Problem / Opportunity

Currently there is no standardised mechanism for CPS applications to broadcast their status changes in an event-driven manner. This creates gaps in observability and makes it impossible to build real-time dashboards or alerting systems that react to application state transitions.

Acceptance Criteria

  1. A new status_change topic is defined and available in EventGate.
  2. The topic schema supports a JSON payload describing the application identifier, previous state, new state, timestamp, and optional metadata.
  3. Producers can publish status_change events via the existing EventGate API.
  4. Consumers can subscribe to the status_change topic via the existing EventGate subscription mechanism.
  5. The topic is documented in the EventGate API/topic registry.

Proposed Solution

Define the status_change topic alongside existing topics, following the established topic registration pattern in EventGate. Agree on a shared JSON schema for the event payload across CPS teams (Unify, LUM, and others) before exposing it to consumers, to avoid costly schema migrations later.

Dependencies / Related

  • Phase 2: SQS consumer + aggregation lambda (absa-group/cps-eventbus-gateway)
  • Phase 3: Dashboarding app (absa-group/data-gateway)

Additional Context

Discussed across CPS teams (Unify, LUM). Agreed approach is to first consolidate on a shared schema before iterating on consumers.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions