【问题标题】:Mongo Shell - Console/Debug LogMongo Shell - 控制台/调试日志
【发布时间】:2011-01-21 00:35:08
【问题描述】:

可能是一个愚蠢的问题。尝试使用 Mongo shell。

我想做这样的事情:

matt@linuxvm:~/mongodb-linux-i686-1.2.3/bin$ ./mongo
MongoDB shell version: 1.2.3
url: test
connecting to: test
Thu Feb 25 20:57:47 connection accepted from 127.0.0.1:37987 #3
type "help" for help
> function test() { debug.log("hello") }
> test()
Thu Feb 25 20:58:06 JS Error: ReferenceError: debug is not defined (shell):0

换句话说,在 Mongo shell 中评估 JS 函数时,我如何输出到控制台。我打算使用一些管理/填充脚本来输出一些精细信息。

我试过console.log,debug.log,记录明显的..

【问题讨论】:

    标签: mongodb


    【解决方案1】:

    我找到了答案,就是print

    print("sweetnesss");
    

    【讨论】:

    • printjson(thing) 在处理对象时更有用一点
    • "打印未定义"
    【解决方案2】:

    我通常在与 shell 交互时使用脚本,所以我编写了一个基本的 Logging 对象,我将其“加载(脚本)”到 shell 中,然后使用 Logging 对象调用日志级别(调试、信息、警告、错误)。 Logger 对象确实在其核心中使用了“print”和“printjson”。此外,它还包含基本的 sprintf、填充、记录格式等。如果您要使用 mongodb 进行大量脚本工作,我推荐这条路线。调试 mongodb 脚本感觉就像回到了使用打印语句进行编程和调试的介绍。可配置的日志记录使这一点变得更好,但我真的很怀念能够单步执行代码。

    【讨论】:

    • +1 关于打印调试的评论,完全同意。您是否在 GitHub 或其他地方共享您的日志记录代码?我正在考虑自己这样做,但我还没有太多代码可以分享。我分叉了github.com/rsdoiel/mongo-modules,但还没有添加任何东西。
    • 我会努力挖掘这个。
    • gbegley:太好了,看起来对我有用。感谢您抽出宝贵的时间将其提供给 mongodb 社区。​​span>
    猜你喜欢
    • 1970-01-01
    • 2018-10-28
    • 2013-11-05
    • 2016-05-20
    • 2014-06-25
    • 2010-10-07
    • 1970-01-01
    • 2023-03-20
    • 2017-04-10
    相关资源
    最近更新 更多