pkg/k8score/event_time.go
Rama main · réplica de lectura del repositorio original.
package k8score
import (
"time"
corev1 "k8s.io/api/core/v1"
)
// EventLastObservedTime handles both core Events and events.k8s.io series.
// EventTime is the first occurrence, not the latest series heartbeat.
func EventLastObservedTime(event *corev1.Event) time.Time {
last := event.LastTimestamp.Time
if event.Series != nil && event.Series.LastObservedTime.After(last) {
last = event.Series.LastObservedTime.Time
}
if last.IsZero() {
last = event.EventTime.Time
}
return last
}
// EventOccurrences preserves the count on modern aggregated Event series.
func EventOccurrences(event *corev1.Event) int32 {
if event.Series != nil && event.Series.Count > 0 {
return event.Series.Count
}
return max(event.Count, 1)
}