LoggingMetricsConsumer receives the stream which means METRICS_STREAM_ID. If you open the tick tuple functionality , all bolts will send the stream. It can’t generate the stream due to
the removal of the tick tuple functionality. But you can defined and send the stream in the bolts/spouts by yourself. Then LoggingMetricsConsumer can receive tuples. Regards John Fang 发件人: Nick R. Katsipoulakis [mailto:[email protected]] 发送时间: 2015年11月30日 8:33 收件人: [email protected] 主题: Strange behavior of Metrics Consumer and Tick Tuples Hello all, I have been recently doing some experiments in Storm and I came across an interesting relation between tick tuples and the behavior of the LoggingMetricsConsumer class. In more detail, my topology consists of two spouts (A and B) sending data to a Bolt (Dispacher), and in turn, the bolt sends its output to two other Bolts (Consumer-A and Consumer-B). In addition, I have to inform you that every component in my topology emits metrics tuples every 1 second. In one of the first versions of my experiment, I had a tick tuple sent to the Dispatcher bolt every 1 second. After a number of revisions, I figured out I did not need the tick-tuple mechanism anymore, so I removed it. I kept doing a lot of updates in my code and I ended with the LoggingMetricsConsumer acting differently than it used to. It did not receive (consume) metrics tuples from the beginning of the execution, but, the metrics started being received after ~20 seconds. In order to figure out the reason that strange behavior, I located the version of my code that consumed metrics properly (since the beginning of the experiment) and compared it with my latest version. After a lot of trial and error rounds, I realized that the reason behind the error was the removal of the tick tuple functionality. I want to ask if the previous makes sense and it is a design choice of Storm (metrics tuples are related with the tick-tuples). If not, then I believe this is bug, and it would be wise to report it to the developers team. Thanks -- Nick R. Katsipoulakis, Department of Computer Science University of Pittsburgh
