From 4e74ecfe109e71bbc74e11980d5bca2a82d38226 Mon Sep 17 00:00:00 2001 From: Delisa Mason Date: Thu, 10 Aug 2017 16:37:06 -0700 Subject: [PATCH] Only capture attributes when fetching user data When a user is connected to many other models, calling toArray can be intensive, and the data gathered may not be much more useful from a debugging perspective. This change reduces the overhead of fetching the user. --- src/BugsnagServiceProvider.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/BugsnagServiceProvider.php b/src/BugsnagServiceProvider.php index 71f59a69..663d8fd9 100644 --- a/src/BugsnagServiceProvider.php +++ b/src/BugsnagServiceProvider.php @@ -269,8 +269,8 @@ protected function setupCallbacks(Client $client, Container $app, array $config) if (!isset($config['user']) || $config['user']) { $client->registerCallback(new CustomUser(function () use ($app) { if ($user = $app->auth->user()) { - if (is_callable([$user, 'toArray'])) { - return $user->toArray(); + if (method_exists($user, 'attributesToArray') && is_callable([$user, 'attributesToArray'])) { + return $user->attributesToArray(); } if ($user instanceof GenericUser) {