如何使用Apache Storm JavaScript模块实现一个示例螺栓?

Apache Storm有一个JavaScript模块/库 ,但我不记得看到使用它的任何示例。 看着图书馆,我不知道如何实现一个示例BasicBolt发出的东西。 我们有一个自定义的风暴拓扑结构和pipe理器,所以我正在集成并运行一个node.js的螺栓。 我可以使用storm-node模块运行一个( https://www.npmjs.com/package/storm-node => https://github.com/STRML/storm-node,https:// github .com / Lazyshot / storm-node )。 但是如果可能的话,我宁愿使用准系统主Apache Storm库。 我得到了如下所示。 能够将消息logging到风暴中,但不能将数据发送到拓扑中的下一个螺栓以消耗。 我想我没有正确调用emit()函数。 随着风暴节点,发射我想要的东西就容易多了。 任何想法我做错了或失踪?

var ExampleBolt = require("./storm.js").BasicBolt; ExampleBolt.prototype.process = function(tuple, done) { this.log("loggedamessage"); var data = JSON.stringify(tuple.values); //originally tried something like this... //this.emit([data]); this.emit({'tuple':data,'anchorTupleId':tuple.values},function taskIdHandler(taskId){ return; }); done(); }; var bolt = new ExampleBolt(); bolt.run(); 

不幸的是,我正在使用的风暴基础设施没有报告任何关于节点螺栓的有用的运行时错误,以找出问题。

https://github.com/apache/storm/blob/master/examples/storm-starter/multilang/resources/splitsentence.js

是作为我们testing的一部分使用的testing分割句螺栓。 它应该给你一个好地方开始。