Skip to content

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

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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions