出于调试目的,能够从map方法中看到您正在返回的内容会很棒。红宝石有可能吗?
答案 0 :(得分:2)
要在Mongo shell中执行此操作,您可以定义自己的emit()
函数的调试版本以打印跟踪信息。
function emit(k, v) {
print("emit");
print(" k:" + k + " v:" + tojson(v));
}
查看MongoDB文档中的Troubleshooting MapReduce以获取更多信息。
答案 1 :(得分:0)
我知道Mongo文档建议定义你自己的emit函数,但是当我观察Mongo的日志时,我发现在map-和reduce函数中直接使用print()更容易。
只需将任何print()放入代码中,运行tail -f /var/log/mongodb/mongodb.log
,然后运行代码即可。您应该看到print()的输出到控制台。
以下是一些好处: