Sentry是否与Mongodb兼容?

3 投票
2 回答
1391 浏览
提问于 2025-04-17 06:32

Sentry(一个用于监控和错误跟踪的工具)是否可以和MongoDB(一个数据库)一起使用?

如果不能,有没有简单的方法让它们可以一起工作?

谢谢大家。

2 个回答

0

不是的,这个问题不是这样。我设置了Django和MongoDB(可以参考这个链接:http://django-mongodb.org/reference/settings.html),并且让Sentry服务器运行起来了。但是当我点击一条消息时,系统报错了,因为消息的ID不是整数。我尝试通过修改Sentry的URL,把原来的\d+改成了\w+,这样做有点效果。然后我再点击那条消息,结果是勉强能用,但在向/sentry/jsapi/发送POST请求时又出现了500错误——这个错误是在运行以下代码时发生的:

method = conn.ops.date_trunc_sql('hour', 'date')

我不想再继续折腾Sentry了。

3

Sentry是建立在关系型数据库上的,所以在可预见的未来,它仍然需要使用这种数据库。虽然在很多NoSQL解决方案中也能实现大部分功能,但涉及到各种类型的索引和一些(更新的)高级SQL时,工作量会大得多。

举个例子,Sentry 2.0有一个“趋势”选项,它是实时计算的,如果用MongoDB来实现,就需要写一个map/reduce查询(而在其他地方,这个功能就能直接使用)。

你可以很方便地使用Raven客户端,并为Sentry服务器设置一个额外的Django网站。只需要简单地输入命令:pip install django-sentry && sentry start,就能搞定。

撰写回答