diff options
author | diosmosis <diosmosis@users.noreply.github.com> | 2018-08-03 04:01:37 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-03 04:01:37 +0300 |
commit | f8ea46b3252ee14da53b32a9118e2af494c29eac (patch) | |
tree | ef57f1b96a0eba2477fd3939ddfdb1401dbfbcff /plugins/CorePluginsAdmin | |
parent | cb1d83db863938ace3ebdafd072dfd32e434fded (diff) |
Reconstruct partial stack traces for fatal errors. (#13238)
* Reconstruct partial stack traces for fatal errors.
* tweak to fatal error breadcrumb
* Add docs + fix test.
* Add fatal error test and improve fatal error stack trace a bit.
* fix test on travis
Diffstat (limited to 'plugins/CorePluginsAdmin')
-rw-r--r-- | plugins/CorePluginsAdmin/Controller.php | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/plugins/CorePluginsAdmin/Controller.php b/plugins/CorePluginsAdmin/Controller.php index f22a966a83..630e8dbf31 100644 --- a/plugins/CorePluginsAdmin/Controller.php +++ b/plugins/CorePluginsAdmin/Controller.php @@ -12,6 +12,7 @@ use Exception; use Piwik\API\Request; use Piwik\Common; use Piwik\Container\StaticContainer; +use Piwik\ErrorHandler; use Piwik\Exception\MissingFilePermissionException; use Piwik\Filechecks; use Piwik\Filesystem; @@ -315,11 +316,15 @@ class Controller extends Plugin\ControllerAdmin $errorMessage = $lastError['message']; + if (\Piwik_ShouldPrintBackTraceWithMessage()) { + $errorMessage .= ' on ' . $lastError['file'] . '(' . $lastError['line'] . ")\n" . ErrorHandler::getFatalErrorPartialBacktrace(); + } + if (Piwik::isUserIsAnonymous()) { $errorMessage = 'A fatal error occurred.'; } - $response = new \Piwik\API\ResponseBuilder($outputFormat); + $response = new \Piwik\API\ResponseBuilder($outputFormat, [], false); // don't print the exception backtrace since it will be useless $message = $response->getResponseException(new Exception($errorMessage)); return $message; |