У меня есть настройка Sentry.io в моем проекте Laravel. Я также использую очереди.
Мне было интересно, можно ли отправить неудачные очереди в Sentry? Поскольку они не отправляются автоматически, когда они терпят неудачу.
У меня есть настройка Sentry.io в моем проекте Laravel. Я также использую очереди.
Мне было интересно, можно ли отправить неудачные очереди в Sentry? Поскольку они не отправляются автоматически, когда они терпят неудачу.
Под неудачными очередями, я думаю, вы имеете в виду неудачные задания, для этого вам просто нужно реализовать метод failed()
внутри задания:
/**
* Handle a job failure.
*
* @return void
*/
public function failed(\Exception $exception)
{
// Send exception data to sentry.io
// It should catch it by default since it throws an exception
// But you can force a report manually
app('sentry')->captureException($exception);
}
Узнайте, как работать с невыполненными заданиями, в документации Laravel.
Если вы добавили в обработчик ошибок следующий фрагмент (как описано здесь), все неперехваченные исключения (также при постановке заданий в очередь) перехватываются до тех пор, пока они проходят проверку ->shouldReport()
.
if (app()->bound('sentry') && $this->shouldReport($exception)) {
app('sentry')->captureException($exception);
}