BugSnag在生产中不适用于Laravel Vapor

我正在尝试与通过Laravel Vapor部署在AWS Lambda上的Laravel应用程序进行Bugsnag集成。

Bugsnag在我的本地计算机上运行良好,但没有从AWS Lamda发送任何错误。

我也尝试了Bugsnag :: setBatchSending(false),但它仍然对我不起作用。

有什么主意吗?

hongge6767 回答:BugSnag在生产中不适用于Laravel Vapor

Laravel Vapor将默认日志记录配置更改为stderr通道,该通道由AWS CloudWatch捕获并记录。

使用包含stderr和BugSnag通道的堆栈驱动程序添加一个新的蒸气通道对我有用。

在.env.production中

LOG_CHANNEL=vapor

在config / logging.php

return [

    "channels" => [        

        "vapor" => [
            "driver" => "stack","channels" => ["bugsnag","stderr"],"ignore_exceptions" => false,],"bugsnag" => [
            "driver" => "bugsnag",];
,

接受的答案在排队作业中对我不起作用,仅适用于网络请求。

Taylor 在 twitter 上评论说最好在应用程序的错误处理程序 (app/Exceptions/Handler.php) 中执行此操作

public function report(Throwable $e)
{
    if (app()->environment() !== 'local') {
        Bugsnag::notifyException($e);
        Bugsnag::flush();
    }

    parent::report($e);
}

这样,在 web、cli 和 queue 中都会正确报告异常。

本文链接:https://www.f2er.com/2835820.html

大家都在问