是否可以在javascript执行中写入mongodb控制台?

时间:2011-12-21 10:00:17

标签: javascript mongodb

我正在学习mongodb的map-reduce功能。我的第一次测试不能按预期工作,我想知道它是如何工作的。

是否有从javascript函数写入mongodb控制台的任何方法,以便我可以检查它?

我尝试了console.log("..."),但它不起作用。

如果没有办法,我会稍后询问我的测试。

4 个答案:

答案 0 :(得分:80)

您必须使用“print( "anything .." )”或printjson来显示对象。

andrey@andrey:~$ mongo
MongoDB shell version: 2.0.2
connecting to: test
> object = { "name" : "any name .." , "key" : "value" }
{ "name" : "any name ..", "key" : "value" }
> printjson ( object )
{ "name" : "any name ..", "key" : "value" }
> print ( "hello world" )
hello world
>

答案 1 :(得分:7)

我想从map / reduce函数中你需要将 debug 消息插入到一些日志集合中:

var map = function() {
  //some staff here
};

var reduce = function(key, values) {
  db.mr_logs.insert({message: "Message from reduce function"});
  //some staff here
};


res = db.items.mapReduce(map, reduce,{ query : {}, out : 'example1' })

在此之后,您可以在mr_logs集合中找到调试结果。

db.mr_logs.find();

对于print,当您处于map或reduce函数时,它似乎不会将输出打印到控制台。

答案 2 :(得分:5)

map-reduce环境中有一个非常简单的解决方法。

How to get print output for debugging map/reduce in Mongoid

答案 3 :(得分:-2)

您可以像这样编写函数/对象的名称:

>fn = function (){return12;}
>fn
function (){return12;}
>

在此处试试:http://try.mongodb.org/