现有流上的聚合计数器

时间:2017-01-23 21:41:48

标签: spring-cloud-dataflow

我正在尝试为我设置的各种流创建聚合计数器。在SpringXD中,它看起来像这样:“tap:stream:MyCustomStream> aggregate-counter”。

到目前为止,在Spring Cloud Dataflow中,我已经完成了“:MyKafkaTopic> aggregate-counter”,它似乎创建了一个Kafka使用者并读取了有效负载以确定该主题上的事件计数。我希望能够点击任何流而不仅仅是Kafka源,例如“MyApp1 | MyApp2” - 名称MyCustomStream。

提供的示例“stream create --definition”:mainstream.http>计数器“--name tap_at_http --deploy”基本上假设为primary.http是一个Kafka主题(或RabbitMQ主题)。

之前有人这样做过吗?

1 个答案:

答案 0 :(得分:0)

按照你的例子,

  

stream create foo --definition“MyApp1 | MyApp2”

如果您必须在生产者foo级别点击MyApp1流,则您的TAP流将具有以下内容。

  

stream create bar --definition“:foo.MyApp1> MyApp3”

您只是指向要在TAP中获取相同数据副本的流中的生产者。格式为::<streamName>.<label/appName>。您也可以使用“标签”代替应用名称。有关详细信息,请查看reference guide

  

提供的示例“stream create --definition”:mainstream.http&gt;计数器“--name tap_at_http --deploy”基本上假设为primary.http是一个Kafka主题(或RabbitMQ主题)。

在这种情况下,mainstream是流名称,您在http源应用程序上进行了TAP,这相当于:mainstream.http

这类似于Spring XD中的tap:stream:foo。默认情况下,Spring XD假设生成器(如果仅在流中)。但是,当你在处理器上进行TAP时,你必须指定它。

在SCDF中,我们专门要求它使其更具描述性,并且DSL也易于遵循。