简体   繁体   中英

In Storm is there a way to count the number of tuples that failed due to timeout?

I'm trying to develop some reporting around our Storm topologies and one metric we would like to report on is the number of tuples that fail due to timing out.

From what I understand Storm will automatically fail a tuple when it fails to complete before the timeout length, but this seems to happen "behind the scenes" and I don't see a way to distinguish between timeout failures vs other types of failures.

Is there any way to expose or capture this information?

If you consider Storm's WebUI, for each bolt there is a count of failed tuples. Those counts are only the manually failed tuples (ie, failed via OutputCollector.fail(...) ) of the bolt and do not include tuples that ran into a timeout. The spout has an overall counter of failed tuples. Thus, you can simply sum up the number of manually failed tuples over all bolts and subtract if from the global spout count to get the number of tuples that timed-out.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM