Skip to content

Attach K8s Workload Events to App Trace #3125

Open
@thisthat

Description

@thisthat

Goal

K8s-generated events about the Application deployment should be attached to the trace generated by Keptn.

Details

Keptn provides a unified trace that describes what's happening in your K8s cluster when users deploy applications on it.
If something goes off, Keptn doesn't provide much information besides the trace being terminated with an error state.
It would be better to have also K8s Event information enclosed to the failed trace to debug and discover the root cause directly in a single source of truth.
OTel has already support for Events, which makes it a perfect fit for us.

Since Keptn starts the KeptnAppVersion span before any K8s controller can take a Workload CR and ends it after K8s controllers finish handling a Workload CR, that Span makes the perfect fit to include all events.

Acceptance Criteria

  • K8s events of workload being part of a KeptnApp delivery are attached to the KeptnAppVersion Span
  • K8s Event timestamp have the same OTel Event timestamp (firstTimestamp field)
  • The OTel Event should follow the K8s SemConv to describe the workload info extracted from the K8s Event (involvedObject and metadata fields)
  • message, reason, and type are added as attributes.

DoD

  • K8s generated events for the workload under deployment by Keptn are attached to Keptn Spans
### Tasks
- [ ] Research: Define list of events that Keptn should observe

Metadata

Metadata

Assignees

Type

No type

Projects

Status

🏗 Shaping

Relationships

None yet

Development

No branches or pull requests

Issue actions