如何在 Sails 中捕获 MongoDB 错误

Posted

技术标签:

【中文标题】如何在 Sails 中捕获 MongoDB 错误【英文标题】:How to catch MongoDB errors in Sails 【发布时间】:2016-08-11 13:22:07 【问题描述】:

希望有人可以帮助我。我正在使用sails 和sails-mongo 连接到我的Mongo DB 副本集。这一切都是通过 Sails 中的配置完成的,所以我实际上并没有自己使用 MongoDB 驱动程序创建连接,Sails 和 ORM(Waterline)为我处理了这一切。

主要用于记录目的,我希望能够记录任何 Mongo 事件(连接、断开连接、重新连接等),理想情况下,我希望能够做到这一点而不必创建一个新的单独的 MongoDB连接只是为了这个目的。

有谁知道我如何挂钩 Waterline/sails-mongo 创建的连接的 MongoDB 事件/回调?

【问题讨论】:

默认情况下,无论何时执行查询都会捕获所有类型的错误。 【参考方案1】:

这在当时是不可能的。已询问该功能。

您可以在模型上使用 .native() 来访问 mongo 集合实例,但它只涉及查询。

当然,您可以直接使用require('mongodb'),但您不会在其上使用水线包装器。这取决于你。

【讨论】:

嗨,亚当,感谢您的回复。正如您提到的,我可能只需要并创建一个单独的连接。我们有 5 个 Mongo 实例作为副本集在 2 个地理位置运行。能够在与应用程序相同的日志中记录断开连接和重新连接是很好的。干杯。

以上是关于如何在 Sails 中捕获 MongoDB 错误的主要内容,如果未能解决你的问题,请参考以下文章

Sails.Js - 我如何在sails.Js 中进行分页

Sails-mongo 适配器,标准化错误消息

Sails.js 0.11 和护照:“缺少凭据”错误

mongodb中sails“包含”的等效查询是啥?

Sails 0.11 从服务器端捕获套接字事件

如何从 MongoDB 中正确捕获异常?