在fabric8 Kubernetes客户端事件()API中,Watcher.Action指示什么?

时间:2017-04-26 00:58:50

标签: java event-handling kubernetes fabric8

我已成功使用Fabric8 Kubernetes客户端events() API订阅我的minikube安装发出的一系列事件。这很酷!

(未记录的)Watcher类有一个(未记录的)eventReceived() method,其第一个参数是Watcher.Actionenum,其值为ADDED,{ {1}},MODIFIEDDELETED)。它的第二个参数是(我发现in another question)和ERROR,它代表了Kubernetes Event资源(我猜)。

我在事件流中注意到的是有用的信息,但“动作”似乎与事件无关。例如,以下是我Event的实施中的一些任意输出(我已打印出eventReceived()以显示我的内容已通知的操作):

+++ action:

因此,您会注意到该操作为+++ action: DELETED Event(apiVersion=v1, count=1, firstTimestamp=2017-04-25T23:41:54Z, involvedObject=ObjectReference(apiVersion=v1, fieldPath=spec.containers{controller-manager}, kind=Pod, name=catalog-catalog-controller-manager-1242994143-ddl0l, namespace=catalog, resourceVersion=462865, uid=11fc24bf-2a05-11e7-a27a-080027117396, additionalProperties={}), kind=Event, lastTimestamp=2017-04-25T23:41:54Z, message=Started container with id 7b51c389f153832e7719a99738706c2ff38aa28b298b80741f439b712f166262, metadata=ObjectMeta(annotations=null, clusterName=null, creationTimestamp=2017-04-25T23:41:54Z, deletionGracePeriodSeconds=null, deletionTimestamp=null, finalizers=[], generateName=null, generation=null, labels=null, name=catalog-catalog-controller-manager-1242994143-ddl0l.14b8c87cc177fb77, namespace=catalog, ownerReferences=[], resourceVersion=472706, selfLink=/api/v1/namespaces/catalog/events/catalog-catalog-controller-manager-1242994143-ddl0l.14b8c87cc177fb77, uid=c3851fae-2a10-11e7-a27a-080027117396, additionalProperties={}), reason=Started, source=EventSource(component=kubelet, host=minikube, additionalProperties={}), type=Normal, additionalProperties={}) ,该事件似乎描述了DELETED的开始(请注意Pod数据)。

这是什么意思?我是否误解了message=Started container with id…参数试图告诉我的内容?这可能意味着带有Action实际Event资源已经uid=c3851fae-2a10-11e7-a27a-080027117396(对于大多数情况来说这是非常无用的信息,但我可以看到,我猜,如果事件是也是你会得到的资源,那么,我猜这些事件表明它们被删除了吗?

1 个答案:

答案 0 :(得分:0)

事实上,这确实是它的意思。 Event是一种资源,在某些情况下由WatchEvent表示。关于事件的某些kubectl操作报告了两者的混合,但可以删除Event(例如,当它在概念上描述的东西消失时),并删除{{1}有问题的是Event