我有一个用laravel编写的工作项目,我集成了Sentry来监视错误,我基本上按照他们网站上的说明进行操作
作曲家需要岗哨/哨兵拉拉夫
以及在我的App / Exceptions / Handler.php
中m = df.Key.isin(Keys2Filter)
df = (df[~m].append(df[m].groupby(by=["Key", df.Date.dt.hour])
.max()
.reset_index(level=1, drop=True)
.reset_index()))
print (df)
Key Date Value
10 3 2019-04-17 01:00:00 9
11 3 2019-04-17 01:00:00 9
0 1 2019-04-17 00:00:00 7
1 1 2019-04-17 01:00:00 5
2 1 2019-04-17 02:00:00 3
3 2 2019-04-17 00:00:00 9
4 2 2019-04-17 01:00:00 9
5 2 2019-04-17 02:00:00 9
现在这可以正常工作,我看到了哨兵中的错误。 但是在应用程序的另一端,无论我在哪里使用队列,例如,我都有“忘记密码”通知,并且它实际上实现了ShouldQueue类:
if (app()->bound('sentry') && $this->shouldReport($exception)) {
app('sentry')->captureException($exception);
}
当触发按预期方式工作时,我在作业表中有一条新记录(我有数据库作为队列驱动程序)
现在当我开始工作时
php artisan队列:工作
它一遍又一遍地拖延了最后一个工作
没有发送或接收的邮件...
通过这种方式,只有当我在哨兵中进行报告时,如果我在report()方法中删除了App / Exceptions / Handler.php中的那些行,那一切都很好,如果我从通知中删除队列,它也可以正常工作,哨兵错误报告和通知队列的组合使我成为一个大问题。
答案 0 :(得分:0)
不幸的是,Sentry-laravel不适用于队列。
请,在其GitHub存储库上查看此问题,以获取有关此问题的更多信息:
https://github.com/getsentry/sentry-laravel/issues/18
还有一个未解决的问题(正在尝试解决):
https://github.com/getsentry/sentry-laravel/pull/228
如果您现在确实需要将这些日志放在队列中,则应该使用https://github.com/twineis/raven-php。