ChatGPT解决这个技术问题 Extra ChatGPT

Mongo Shell - 控制台/调试日志

可能是一个愚蠢的问题。尝试使用 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,记录明显的..


M
Maxim Filippov

我找到了答案,就是print

print("sweetnesss");

printjson(thing) 在处理对象时更有用一点
“打印未定义”
g
gbegley

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


+1 关于打印调试的评论,完全同意。您是否在 GitHub 或其他地方共享您的日志记录代码?我正在考虑自己这样做,但我还没有太多代码可以分享。我分叉了 github.com/rsdoiel/mongo-modules,但尚未添加任何内容。
我会尝试挖掘这个。
gbegley:太好了,看起来对我有用。感谢您抽出宝贵时间将其提供给 mongodb 社区。

关注公众号,不定期副业成功案例分享
关注公众号

不定期副业成功案例分享

领先一步获取最新的外包任务吗?

立即订阅