-
Notifications
You must be signed in to change notification settings - Fork 229
Open
Labels
area/event-exporterEvent exporter componentEvent exporter componentenhancementgoPull requests that update Go codePull requests that update Go codekind/featureNew feature or requestNew feature or requestpriority/important-soonImportant issues to address soonImportant issues to address soon
Description
Problem
Current watcher storage (DeltaFIFO/TTL) retains full event objects and fires handler callbacks for every add/update. Under heavy churn, this increases memory pressure and CPU overhead, especially when the sink only needs a subset of fields.
Proposed optimization
Use a SharedInformer with WithTransform to drop unused fields before objects are cached/processed, or implement a minimal store that retains only the fields needed for log entry creation. This reduces object size and avoids holding large event payloads in memory.
Notes / references
- SharedInformer
WithTransform: https://pkg.go.dev/k8s.io/client-go/informers#WithTransform - cache store implementations: https://pkg.go.dev/k8s.io/client-go/tools/cache
Acceptance criteria
- Event objects stored/queued contain only required fields for log entry creation.
- Memory usage under high event volume decreases vs. current storage.
- Functional behavior (log payloads) remains unchanged.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
area/event-exporterEvent exporter componentEvent exporter componentenhancementgoPull requests that update Go codePull requests that update Go codekind/featureNew feature or requestNew feature or requestpriority/important-soonImportant issues to address soonImportant issues to address soon