mirror of
https://github.com/kubernetes/client-go.git
synced 2025-06-24 06:07:48 +00:00
add metadata to kubelet eviction event annotations
Kubernetes-commit: fd1f19fc423880b2b292d6f9e6fca1e941e87994
This commit is contained in:
parent
e1509da70e
commit
55b7c99dca
@ -72,6 +72,9 @@ type EventRecorder interface {
|
|||||||
|
|
||||||
// PastEventf is just like Eventf, but with an option to specify the event's 'timestamp' field.
|
// PastEventf is just like Eventf, but with an option to specify the event's 'timestamp' field.
|
||||||
PastEventf(object runtime.Object, timestamp metav1.Time, eventtype, reason, messageFmt string, args ...interface{})
|
PastEventf(object runtime.Object, timestamp metav1.Time, eventtype, reason, messageFmt string, args ...interface{})
|
||||||
|
|
||||||
|
// AnnotatedEventf is just like eventf, but with annotations attached
|
||||||
|
AnnotatedEventf(object runtime.Object, annotations map[string]string, eventtype, reason, messageFmt string, args ...interface{})
|
||||||
}
|
}
|
||||||
|
|
||||||
// EventBroadcaster knows how to receive events and send them to any EventSink, watcher, or log.
|
// EventBroadcaster knows how to receive events and send them to any EventSink, watcher, or log.
|
||||||
@ -250,7 +253,7 @@ type recorderImpl struct {
|
|||||||
clock clock.Clock
|
clock clock.Clock
|
||||||
}
|
}
|
||||||
|
|
||||||
func (recorder *recorderImpl) generateEvent(object runtime.Object, timestamp metav1.Time, eventtype, reason, message string) {
|
func (recorder *recorderImpl) generateEvent(object runtime.Object, annotations map[string]string, timestamp metav1.Time, eventtype, reason, message string) {
|
||||||
ref, err := ref.GetReference(recorder.scheme, object)
|
ref, err := ref.GetReference(recorder.scheme, object)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
glog.Errorf("Could not construct reference to: '%#v' due to: '%v'. Will not report event: '%v' '%v' '%v'", object, err, eventtype, reason, message)
|
glog.Errorf("Could not construct reference to: '%#v' due to: '%v'. Will not report event: '%v' '%v' '%v'", object, err, eventtype, reason, message)
|
||||||
@ -262,7 +265,7 @@ func (recorder *recorderImpl) generateEvent(object runtime.Object, timestamp met
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
event := recorder.makeEvent(ref, eventtype, reason, message)
|
event := recorder.makeEvent(ref, annotations, eventtype, reason, message)
|
||||||
event.Source = recorder.source
|
event.Source = recorder.source
|
||||||
|
|
||||||
go func() {
|
go func() {
|
||||||
@ -281,7 +284,7 @@ func validateEventType(eventtype string) bool {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (recorder *recorderImpl) Event(object runtime.Object, eventtype, reason, message string) {
|
func (recorder *recorderImpl) Event(object runtime.Object, eventtype, reason, message string) {
|
||||||
recorder.generateEvent(object, metav1.Now(), eventtype, reason, message)
|
recorder.generateEvent(object, nil, metav1.Now(), eventtype, reason, message)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (recorder *recorderImpl) Eventf(object runtime.Object, eventtype, reason, messageFmt string, args ...interface{}) {
|
func (recorder *recorderImpl) Eventf(object runtime.Object, eventtype, reason, messageFmt string, args ...interface{}) {
|
||||||
@ -289,10 +292,14 @@ func (recorder *recorderImpl) Eventf(object runtime.Object, eventtype, reason, m
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (recorder *recorderImpl) PastEventf(object runtime.Object, timestamp metav1.Time, eventtype, reason, messageFmt string, args ...interface{}) {
|
func (recorder *recorderImpl) PastEventf(object runtime.Object, timestamp metav1.Time, eventtype, reason, messageFmt string, args ...interface{}) {
|
||||||
recorder.generateEvent(object, timestamp, eventtype, reason, fmt.Sprintf(messageFmt, args...))
|
recorder.generateEvent(object, nil, timestamp, eventtype, reason, fmt.Sprintf(messageFmt, args...))
|
||||||
}
|
}
|
||||||
|
|
||||||
func (recorder *recorderImpl) makeEvent(ref *v1.ObjectReference, eventtype, reason, message string) *v1.Event {
|
func (recorder *recorderImpl) AnnotatedEventf(object runtime.Object, annotations map[string]string, eventtype, reason, messageFmt string, args ...interface{}) {
|
||||||
|
recorder.generateEvent(object, annotations, metav1.Now(), eventtype, reason, fmt.Sprintf(messageFmt, args...))
|
||||||
|
}
|
||||||
|
|
||||||
|
func (recorder *recorderImpl) makeEvent(ref *v1.ObjectReference, annotations map[string]string, eventtype, reason, message string) *v1.Event {
|
||||||
t := metav1.Time{Time: recorder.clock.Now()}
|
t := metav1.Time{Time: recorder.clock.Now()}
|
||||||
namespace := ref.Namespace
|
namespace := ref.Namespace
|
||||||
if namespace == "" {
|
if namespace == "" {
|
||||||
@ -302,6 +309,7 @@ func (recorder *recorderImpl) makeEvent(ref *v1.ObjectReference, eventtype, reas
|
|||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: fmt.Sprintf("%v.%x", ref.Name, t.UnixNano()),
|
Name: fmt.Sprintf("%v.%x", ref.Name, t.UnixNano()),
|
||||||
Namespace: namespace,
|
Namespace: namespace,
|
||||||
|
Annotations: annotations,
|
||||||
},
|
},
|
||||||
InvolvedObject: *ref,
|
InvolvedObject: *ref,
|
||||||
Reason: reason,
|
Reason: reason,
|
||||||
|
@ -45,6 +45,10 @@ func (f *FakeRecorder) Eventf(object runtime.Object, eventtype, reason, messageF
|
|||||||
func (f *FakeRecorder) PastEventf(object runtime.Object, timestamp metav1.Time, eventtype, reason, messageFmt string, args ...interface{}) {
|
func (f *FakeRecorder) PastEventf(object runtime.Object, timestamp metav1.Time, eventtype, reason, messageFmt string, args ...interface{}) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (f *FakeRecorder) AnnotatedEventf(object runtime.Object, annotations map[string]string, eventtype, reason, messageFmt string, args ...interface{}) {
|
||||||
|
f.Eventf(object, eventtype, reason, messageFmt, args)
|
||||||
|
}
|
||||||
|
|
||||||
// NewFakeRecorder creates new fake event recorder with event channel with
|
// NewFakeRecorder creates new fake event recorder with event channel with
|
||||||
// buffer of given size.
|
// buffer of given size.
|
||||||
func NewFakeRecorder(bufferSize int) *FakeRecorder {
|
func NewFakeRecorder(bufferSize int) *FakeRecorder {
|
||||||
|
Loading…
Reference in New Issue
Block a user