在storm ui中,没有tuples被拓扑发出或传递。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在storm ui中,没有tuples被拓扑发出或传递。相关的知识,希望对你有一定的参考价值。

我使用stormcrawler 1.16与elasticsearch 7.2.0.我已经建立了项目与acrhetype.command,我运行提交的拓扑。

 storm jar target/stormcrawler-1.0-SNAPSHOT.jar  org.apache.storm.flux.Flux --remote es-crawler.flux

我在输出中得到了这个 -

 Parsing file: /home/ubuntu/stormcrawler/es-crawler.flux
 835  [main] INFO  o.a.s.f.p.FluxParser - loading YAML from input 
 stream...
 841  [main] INFO  o.a.s.f.p.FluxParser - Not performing property 
 substitution.
 841  [main] INFO  o.a.s.f.p.FluxParser - Not performing environment 
 variable substitution.
 900  [main] INFO  o.a.s.f.p.FluxParser - Loading includes from 
 resource: /crawler-default.yaml
 901  [main] INFO  o.a.s.f.p.FluxParser - loading YAML from input 
 stream...
 903  [main] INFO  o.a.s.f.p.FluxParser - Not performing property 
 substitution.
 903  [main] INFO  o.a.s.f.p.FluxParser - Not performing environment 
 variable substitution.
 Configuration (interpreted): 

那么我最后输出的行数-

   2014 [main] WARN  o.a.s.u.Utils - STORM-VERSION new 1.2.3 old 1.2.3
   2376 [main] INFO  o.a.s.StormSubmitter - Finished submitting topology: crawler

但当我在storm ui中检查这个爬虫拓扑时,在拓扑统计中,没有任何元组被这个爬虫拓扑发出或传送。

I have atteched a snapshot of storm ui in link below.

在拓扑统计中,没有任何元组被发射或传输。我如何解决这个问题?1

答案

你的POM文件可能缺少了 storm-crawler-elasticsearch 的依赖性。

您可以将您的代码与由 storm-crawler-elasticsearch-archetype。,这应该会给你一个工作配置。

为Elasticsearch使用原型。

mvn archetype:generate -DarchetypeGroupId=com.digitalpebble.stormcrawler -DarchetypeArtifactId=storm-crawler-elasticsearch-archetype -DarchetypeVersion=LATEST。

你会被要求输入一个groupId(例如com.mycompany.crawler),一个artefactId(例如stormcrawler),一个版本和包名。

这不仅会创建一个完整的项目,包含一个具有上述依赖关系的POM,还包含一组资源、配置文件和一个拓扑类。输入你刚刚创建的目录(应该和你之前指定的artefactId一样),然后按照README文件上的说明进行操作。

以上是关于在storm ui中,没有tuples被拓扑发出或传递。的主要内容,如果未能解决你的问题,请参考以下文章

Storm 中什么是-acker,acker工作流程介绍

storm基本概念

storm trident 消息成功处理

storm的acker机制理解。

拓扑统计中奇怪的“发射”数字行为/零统计数字(Storm 1.0.3)

Storm的ack机制在项目应用中的坑