Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Node.JS:MongoDB update回调返回带有函数代码的结果_Javascript_Node.js_Mongodb - Fatal编程技术网

Javascript Node.JS:MongoDB update回调返回带有函数代码的结果

Javascript Node.JS:MongoDB update回调返回带有函数代码的结果,javascript,node.js,mongodb,Javascript,Node.js,Mongodb,我有一个脚本更新MongoDB集合,并将错误和结果对象记录在其回调函数中。除了结果对象包含一长段代码(我不知道如何去除)之外,其他所有对象都可以正常工作。我使用的是2.0.46版 代码段: var find = {_id:id}, set = {$set:{dt:now}}; myCollection.update(find, set, function(err, result) { if(err) logger.error(JSON.stringify([find, set]), e

我有一个脚本更新MongoDB集合,并将错误和结果对象记录在其回调函数中。除了结果对象包含一长段代码(我不知道如何去除)之外,其他所有对象都可以正常工作。我使用的是2.0.46版

代码段:

var find = {_id:id}, set = {$set:{dt:now}}; 
myCollection.update(find, set, function(err, result) {
    if(err) logger.error(JSON.stringify([find, set]), err.toString());
    else logger.verbose(result);
})
然后,当更新没有发生错误时,我会收到这组日志条目

2015-10-29T03:45:13.253Z - verbose: ok=1, nModified=1, n=1, _bsontype=Timestamp, low_=17, high_=1446090311, _bsontype=ObjectID, id=V.ßÂb$#\¾¾«, domain=null, 
close=function g() {
    this.removeListener(type, g);
    if (!fired) {
        fired = true;
        listener.apply(this, arguments);
    }
您在上面的日志条目中看到的函数只是一小部分。实际的“关闭函数””有上万行,因此它可以快速填充我的日志文件

我使用的记录器是


我想知道我做错了什么导致了这样的回报?任何建议都将不胜感激

这不是mongodb或本机mongodb驱动程序的问题

MongoDB结果包含关于数据库和行的其他详细信息,因此您将在控制台中接收该方法

您需要通过访问result object中可用的对象来记录所需的信息,即result.ok、result.n、result.nModified 像下面这样

winston.info(result.ok, result.n, result.nModified);

将结果记录到控制台并查看结果。我很好奇这是mongodb问题还是logger问题。不,它与日志文件相同。我用温斯顿来记录。我认为这是MongoDB的事情,因为如果Mongo不返回这样的内容,logger就不会添加额外的内容。这是MongoDB的响应……如果在MongoShell中更新,你会发现这个响应也是Sosubham的,我知道它来自MongoDB,但我不同意它来自MongoShell。对于什么你需要一个数以万计的JS代码行的响应?