diff --git a/app/Exceptions/DisplayException.php b/app/Exceptions/DisplayException.php index c0abdddd0..ae06f983a 100644 --- a/app/Exceptions/DisplayException.php +++ b/app/Exceptions/DisplayException.php @@ -23,7 +23,26 @@ */ namespace Pterodactyl\Exceptions; +use Log; + class DisplayException extends \Exception { + private $_logging = null; + + public function __construct($message, $log = null) + { + $this->_logging = $log; + if ($this->_logging !== null) { + Log::error($log); + } + + parent::__construct($message); + } + + public function getLogging() + { + return $this->_logging; + } + } diff --git a/app/Http/Controllers/Admin/ServersController.php b/app/Http/Controllers/Admin/ServersController.php index 2d10c02a4..21c7be754 100644 --- a/app/Http/Controllers/Admin/ServersController.php +++ b/app/Http/Controllers/Admin/ServersController.php @@ -286,7 +286,7 @@ class ServersController extends Controller Alert::success('A rebuild has been queued successfully. It will run the next time this server is booted.')->flash(); } catch (\GuzzleHttp\Exception\TransferException $ex) { Log::warning($ex); - Alert::danger('An error occured while attempting to toggle a rebuild: ' . $ex->getMessage())->flash(); + Alert::danger('An error occured while attempting to toggle a rebuild.')->flash(); } return redirect()->route('admin.servers.view', [ diff --git a/app/Repositories/ServerRepository.php b/app/Repositories/ServerRepository.php index b0b5499d6..9291d254c 100644 --- a/app/Repositories/ServerRepository.php +++ b/app/Repositories/ServerRepository.php @@ -282,7 +282,7 @@ class ServerRepository return $server->id; } catch (\GuzzleHttp\Exception\TransferException $ex) { DB::rollBack(); - throw new DisplayException('An error occured while attempting to create the server: ' . $ex->getMessage()); + throw new DisplayException('An error occured while attempting to create the server.', $ex); } catch (\Exception $ex) { DB::rollBack(); Log:error($ex); @@ -530,7 +530,7 @@ class ServerRepository return true; } catch (\GuzzleHttp\Exception\TransferException $ex) { DB::rollBack(); - throw new DisplayException('An error occured while attempting to update the configuration: ' . $ex->getMessage()); + throw new DisplayException('An error occured while attempting to update the configuration.', $ex); } catch (\Exception $ex) { DB::rollBack(); throw $ex; @@ -647,7 +647,7 @@ class ServerRepository return true; } catch (\GuzzleHttp\Exception\TransferException $ex) { DB::rollBack(); - throw new DisplayException('An error occured while attempting to update the server configuration: ' . $ex->getMessage()); + throw new DisplayException('An error occured while attempting to update the server configuration.', $ex); } catch (\Exception $ex) { DB::rollBack(); throw $ex; @@ -697,8 +697,7 @@ class ServerRepository return true; } else { DB::rollBack(); - Log::error($ex); - throw new DisplayException('An error occured while attempting to delete the server on the daemon: ' . $ex->getMessage()); + throw new DisplayException('An error occured while attempting to delete the server on the daemon.', $ex); } } catch (\Exception $ex) { DB::rollBack(); @@ -768,7 +767,7 @@ class ServerRepository ]); return true; } catch (\GuzzleHttp\Exception\TransferException $ex) { - throw new DisplayException('There was an error while attmping to contact the remote service to change the password.'); + throw new DisplayException('There was an error while attmping to contact the remote service to change the password.', $ex); } catch (\Exception $ex) { throw $ex; } diff --git a/app/Repositories/SubuserRepository.php b/app/Repositories/SubuserRepository.php index e175ef0cf..66db1ec8d 100644 --- a/app/Repositories/SubuserRepository.php +++ b/app/Repositories/SubuserRepository.php @@ -195,7 +195,7 @@ class SubuserRepository return $subuser->id; } catch (\GuzzleHttp\Exception\TransferException $ex) { DB::rollBack(); - throw new DisplayException('There was an error attempting to connect to the daemon to add this user.'); + throw new DisplayException('There was an error attempting to connect to the daemon to add this user.', $ex); } catch (\Exception $ex) { DB::rollBack(); throw $ex; @@ -241,7 +241,7 @@ class SubuserRepository return true; } catch (\GuzzleHttp\Exception\TransferException $ex) { DB::rollBack(); - throw new DisplayException('There was an error attempting to connect to the daemon to delete this subuser.'); + throw new DisplayException('There was an error attempting to connect to the daemon to delete this subuser.', $ex); } catch (\Exception $ex) { DB::rollBack(); throw $ex; @@ -316,7 +316,7 @@ class SubuserRepository return true; } catch (\GuzzleHttp\Exception\TransferException $ex) { DB::rollBack(); - throw new DisplayException('There was an error attempting to connect to the daemon to update permissions.'); + throw new DisplayException('There was an error attempting to connect to the daemon to update permissions.', $ex); } catch (\Exception $ex) { DB::rollBack(); throw $ex;