Merge pull request #12694 from uberbrady/config_cachable_if_no_rollbar

Fixed #12671: Re-enable config:cache when there's no Rollbar
This commit is contained in:
snipe 2023-03-20 14:17:53 -07:00 committed by GitHub
commit 05b4170116
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -112,7 +112,19 @@ $config = [
'handler' => \Rollbar\Laravel\MonologHandler::class, 'handler' => \Rollbar\Laravel\MonologHandler::class,
'access_token' => env('ROLLBAR_TOKEN'), 'access_token' => env('ROLLBAR_TOKEN'),
'level' => env('ROLLBAR_LEVEL', 'error'), 'level' => env('ROLLBAR_LEVEL', 'error'),
'check_ignore' => function($isUncaught, $args, $payload) { ],
],
];
if ((env('APP_ENV')=='production') && (env('ROLLBAR_TOKEN'))) {
// Only add rollbar if the .env has a rollbar token
$config['channels']['stack']['channels'] = ['single', 'rollbar'];
// and only add the rollbar filter under the same conditions
// Note: it will *not* be cacheable
$config['channels']['rollbar']['check_ignore'] = function ($isUncaught, $args, $payload) {
if (App::environment('production') && is_object($args) && get_class($args) == Rollbar\ErrorWrapper::class && $args->errorLevel == E_WARNING ) { if (App::environment('production') && is_object($args) && get_class($args) == Rollbar\ErrorWrapper::class && $args->errorLevel == E_WARNING ) {
\Log::info("IGNORING E_WARNING in production mode: ".$args->getMessage()); \Log::info("IGNORING E_WARNING in production mode: ".$args->getMessage());
return true; // "TRUE - you should ignore it!" return true; // "TRUE - you should ignore it!"
@ -123,16 +135,8 @@ $config = [
return true; //yes, *do* ignore it return true; //yes, *do* ignore it
} }
return false; return false;
}, };
],
],
];
// Only add rollbar if the .env has a rollbar token
if ((env('APP_ENV')=='production') && (env('ROLLBAR_TOKEN'))) {
$config['channels']['stack']['channels'] = ['single', 'rollbar'];
} }