PHP错误日志已成功发送到Sentry,但在Sentry仪表板上未显示任何日志

PHP错误日志已成功发送到Sentry,但在Sentry仪表板上未显示任何日志,php,sentry,raven,Php,Sentry,Raven,即使成功发送错误,Sentry Dashboard仍未更新的原因是什么 我尝试模拟一个错误,并在Raven库中记录从获取异常到发送到sentry的整个过程。Raven返回了一个200 Http代码(成功),但当我在Sentry仪表板上检查它时,日志是空的 我们的Raven版本是0.9.0 更新: 我已经尝试了Raven CLI测试仪,如图所示,它成功地发送了异常,但Sentry仪表板中没有显示日志 更新: 通过重新安装Sentry并使用新dsn修复了此问题。如果有其他解决方案不需要重新安装和使用

即使成功发送错误,Sentry Dashboard仍未更新的原因是什么

我尝试模拟一个错误,并在Raven库中记录从获取异常到发送到sentry的整个过程。Raven返回了一个200 Http代码(成功),但当我在Sentry仪表板上检查它时,日志是空的

我们的Raven版本是0.9.0

更新:

我已经尝试了Raven CLI测试仪,如图所示,它成功地发送了异常,但Sentry仪表板中没有显示日志

更新:


通过重新安装Sentry并使用新dsn修复了此问题。如果有其他解决方案不需要重新安装和使用新dsn。欢迎分享您的答案。

如果您使用SENTRY内部部署,如果工作进程未运行或队列未备份,则可能会发生这种情况。官方文件说:

Sentry配备了一个内置队列,以更高效的方式处理任务 异步方式。例如,当事件发生而不是 将其立即写入数据库,它会向队列发送一个作业,以便 请求可以立即返回,背景 工人们负责实际保存这些数据

值得注意的是,它依靠芹菜图书馆来管理员工。因此,从CLI运行辅助程序可能会解决此问题:

$ sentry celery worker
建议将此作为服务运行,使用supervisor的配置示例:

[program:sentry-worker]
directory=/www/sentry/
command=/www/sentry/bin/sentry celery worker -l WARNING
autostart=true
autorestart=true
redirect_stderr=true
killasgroup=true
Sentry支持两个主要代理,可根据您的工作量进行调整:

RabbitMQ  and `Redis`

雷迪斯

默认代理是Redis,在大多数情况下都可以工作。使用Redis的主要限制是所有挂起的工作必须放在内存中

BROKER_URL = "redis://localhost:6379/0"
如果您的Redis连接需要密码进行身份验证,则需要使用以下格式:

BROKER_URL = "redis://:password@localhost:6379/0"
兔子

如果您在高工作负载下运行,或者担心在内存中安装挂起的工作负载,那么RabbitMQ是支持Sentry工作人员的理想人选

BROKER_URL = "amqp://guest:guest@localhost:5672/sentry"

对不起,我不明白。。。如果返回的代码是200 OK,那么您期望的异常是什么?当Raven客户端返回200 Http代码时,这意味着日志应该显示在我们的Sentry仪表板中,但我们的Sentry仪表板没有更新的错误日志。