Documentation ¶
Overview ¶
Package record has all client logic for recording and reporting events.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetEvents ¶
GetEvents lets you see *local* events. Convenience function for testing. The return value can be ignored or used to stop logging, if desired.
func StartLogging ¶
StartLogging just logs local events, using the given logging function. The return value can be ignored or used to stop logging, if desired.
func StartRecording ¶
StartRecording starts sending events to a sink. Call once while initializing your binary. Subsequent calls will be ignored. The return value can be ignored or used to stop recording, if desired. TODO: make me an object with parameterizable queue length and retry interval
Types ¶
type EventRecorder ¶
type EventRecorder interface { // Event constructs an event from the given information and puts it in the queue for sending. // 'object' is the object this event is about. Event will make a reference-- or you may also // pass a reference to the object directly. // 'reason' is the reason this event is generated. 'reason' should be short and unique; it will // be used to automate handling of events, so imagine people writing switch statements to // handle them. You want to make that easy. // 'message' is intended to be human readable. // // The resulting event will be created in the same namespace as the reference object. Event(object runtime.Object, reason, message string) // Eventf is just like Event, but with Sprintf for the message field. Eventf(object runtime.Object, reason, messageFmt string, args ...interface{}) }
EventRecorder knows how to record events for an EventSource.
func FromSource ¶
func FromSource(source api.EventSource) EventRecorder
FromSource returns an EventRecorder that records events with the given event source.
type EventSink ¶
type EventSink interface { Create(event *api.Event) (*api.Event, error) Update(event *api.Event) (*api.Event, error) }
EventSink knows how to store events (client.Client implements it.) EventSink must respect the namespace that will be embedded in 'event'. It is assumed that EventSink will return the same sorts of errors as pkg/client's REST client.
type FakeRecorder ¶
type FakeRecorder struct{}
FakeRecorder is used as a fake during tests.