Skip to content

Commit d816ffa

Browse files
mouuiigitbook-bot
authored andcommitted
GITBOOK-112: No subject
1 parent 343c67c commit d816ffa

File tree

1 file changed

+22
-17
lines changed
  • k8s-yuan-ma-ren-cai-fu-hua-xun-lian-ying/di-wu-zhang-apimachinery

1 file changed

+22
-17
lines changed

k8s-yuan-ma-ren-cai-fu-hua-xun-lian-ying/di-wu-zhang-apimachinery/5.8-event.md

Lines changed: 22 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -120,13 +120,14 @@ type Event struct {
120120

121121
###  EventBroadcaster源码分析
122122

123-
#### 4.1 EventRecorder记录事件(事件生产者/事件记录器
123+
#### 4.1 EventRecorder记录事件(事件生产者)
124124

125125
* EventRecorder
126126

127-
在client-go中的 staging/src/k8s.io/client-go/tools/record/event.go 中定义的EventRecorder接口
127+
在 client-go 中的 staging/src/k8s.io/client-go/tools/record/event.go 中定义的 EventRecorder 接口
128128

129129
```go
130+
// EventRecorder 知道如何记录事件源产生的时间
130131
// EventRecorder knows how to record events on behalf of an EventSource.
131132
type EventRecorder interface {
132133
// Event constructs an event from the given information and puts it in the queue for sending.
@@ -151,7 +152,7 @@ type EventRecorder interface {
151152

152153
```
153154

154-
EventRecorder定义了记录Event的三种方法,用以帮助kubernetes组件记录Event。其中Event是可以用来记录刚发生的事件;Eventf通过使用fmt.Sprintf格式化输出事件的格式;AnnotatedEventf功能和Eventf一致,但是附加了注释字段。
155+
EventRecorder 接口定义了记录 Event 的三种方法,用以帮助kubernetes组件记录Event。其中Event是以来记录刚发生的事件;Eventf通过使用fmt.Sprintf格式化输出事件的格式;AnnotatedEventf功能和Eventf一致,但是附加了注释字段。
155156

156157
* recordImpl
157158

@@ -272,7 +273,7 @@ func (recorder *recorderImpl) makeEvent(ref *v1.ObjectReference, annotations map
272273

273274
generateEvent方法调用ActionOrDrop方法,将事件写入到incoming中:
274275

275-
#### 4.2 EventBroadcaster事件广播(事件消费者/事件广播器
276+
#### 4.2 EventBroadcaster事件广播(事件消费者)
276277

277278
* EventBroadcaster
278279

@@ -283,31 +284,35 @@ generateEvent方法调用ActionOrDrop方法,将事件写入到incoming中:
283284
```go
284285
// EventBroadcaster knows how to receive events and send them to any EventSink, watcher, or log.
285286
type EventBroadcaster interface {
286-
// StartRecordingToSink starts sending events received from the specified eventBroadcaster.
287-
StartRecordingToSink(stopCh <-chan struct{})
287+
// StartEventWatcher starts sending events received from this EventBroadcaster to the given
288+
// event handler function. The return value can be ignored or used to stop recording, if
289+
// desired.
290+
StartEventWatcher(eventHandler func(*v1.Event)) watch.Interface
288291

289-
// NewRecorder returns an EventRecorder that can be used to send events to this EventBroadcaster
290-
// with the event source set to the given event source.
291-
NewRecorder(scheme *runtime.Scheme, reportingController string) EventRecorder
292+
// StartRecordingToSink starts sending events received from this EventBroadcaster to the given
293+
// sink. The return value can be ignored or used to stop recording, if desired.
294+
StartRecordingToSink(sink EventSink) watch.Interface
292295

293-
// StartEventWatcher enables you to watch for emitted events without usage
294-
// of StartRecordingToSink. This lets you also process events in a custom way (e.g. in tests).
295-
// NOTE: events received on your eventHandler should be copied before being used.
296-
// TODO: figure out if this can be removed.
297-
StartEventWatcher(eventHandler func(event runtime.Object)) func()
296+
// StartLogging starts sending events received from this EventBroadcaster to the given logging
297+
// function. The return value can be ignored or used to stop recording, if desired.
298+
StartLogging(logf func(format string, args ...interface{})) watch.Interface
298299

299300
// StartStructuredLogging starts sending events received from this EventBroadcaster to the structured
300301
// logging function. The return value can be ignored or used to stop recording, if desired.
301-
StartStructuredLogging(verbosity klog.Level) func()
302+
StartStructuredLogging(verbosity klog.Level) watch.Interface
303+
304+
// NewRecorder returns an EventRecorder that can be used to send events to this EventBroadcaster
305+
// with the event source set to the given event source.
306+
NewRecorder(scheme *runtime.Scheme, source v1.EventSource) EventRecorder
302307

303308
// Shutdown shuts down the broadcaster
304309
Shutdown()
305310
}
306311
```
307312

308-
EventBroadcaster作为Event消费者和事件广播器,消费EventRecorder记录的事件并将其分发给目前所有已连接的broadcasterWatcher
313+
EventBroadcaster作为 Event 消费者,消费 EventRecorder 记录的事件并将其分发给目前所有已连接的broadcasterWatcher
309314

310-
结构体eventBroadcasterImpl是其实现
315+
结构体 eventBroadcasterImpl 是其实现
311316

312317
```go
313318

0 commit comments

Comments
 (0)