Skip to content

[P0] event-exporter: migrate watcher to events.k8s.io/v1 to reduce event churn #1028

@erain

Description

@erain

Problem

event-exporter watches core/v1 Events. These objects are updated frequently (count/lastTimestamp), generating high update volume and write amplification to Cloud Logging under heavy load. This increases CPU, memory, and egress in large clusters.

Proposed optimization

Switch the event watcher to events.k8s.io/v1 and map EventSeries to reduce update frequency. In the newer Events API, repeated events are represented as a series (series.count, series.lastObservedTime) rather than continuous updates to a single core/v1 Event. This should significantly reduce update traffic and improve throughput in high-volume clusters.

Notes / references

Acceptance criteria

  • Watcher uses events.k8s.io/v1 client and handles EventSeries semantics.
  • Observed reduction in update volume vs. core/v1 (documented via metrics or basic benchmarking).
  • Backward-compatible behavior for log entry fields used by sink (no loss of required data).

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions