72.8. Kubernetes 事件消费者示例
fromF("kubernetes-events://%s?oauthToken=%s", host, authToken)
.setHeader(KubernetesConstants.KUBERNETES_NAMESPACE_NAME, constant("default"))
.setHeader(KubernetesConstants.KUBERNETES_EVENT_NAME, constant("test"))
.process(new KubernertesProcessor()).to("mock:result");
public class KubernertesProcessor implements Processor {
@Override
public void process(Exchange exchange) throws Exception {
Message in = exchange.getIn();
Event cm = exchange.getIn().getBody(Event.class);
log.info("Got event with event name: " + cm.getMetadata().getName() + " and action " + in.getHeader(KubernetesConstants.KUBERNETES_EVENT_ACTION));
}
}
此使用者为事件 "test" 返回命名空间 "default" 上收到的每个事件的消息。它还在消息标头 CamelKubernetesEventAction 和消息标头 CamelKubernetesEventTimestamp 中的 timestamp (io.fabric8.kubernetes.client.Watcher.Action)中设置操作。