Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'core/Tracker/Handler.php')
-rw-r--r--core/Tracker/Handler.php21
1 files changed, 19 insertions, 2 deletions
diff --git a/core/Tracker/Handler.php b/core/Tracker/Handler.php
index cb4707a01b..f4c9fa9339 100644
--- a/core/Tracker/Handler.php
+++ b/core/Tracker/Handler.php
@@ -10,11 +10,13 @@
namespace Piwik\Tracker;
use Piwik\Common;
+use Piwik\Container\StaticContainer;
use Piwik\Exception\InvalidRequestParameterException;
use Piwik\Exception\UnexpectedWebsiteFoundException;
use Piwik\Tracker;
use Exception;
use Piwik\Url;
+use Psr\Log\LoggerInterface;
class Handler
{
@@ -28,9 +30,15 @@ class Handler
*/
private $tasksRunner;
+ /**
+ * @var LoggerInterface
+ */
+ private $logger;
+
public function __construct()
{
$this->setResponse(new Response());
+ $this->logger = StaticContainer::get(LoggerInterface::class);
}
public function setResponse($response)
@@ -81,8 +89,6 @@ class Handler
public function onException(Tracker $tracker, RequestSet $requestSet, Exception $e)
{
- Common::printDebug("Exception: " . $e->getMessage());
-
$statusCode = 500;
if ($e instanceof UnexpectedWebsiteFoundException) {
$statusCode = 400;
@@ -90,6 +96,17 @@ class Handler
$statusCode = 400;
}
+ // if an internal server error, log as a real error, otherwise it's just malformed input
+ if ($statusCode == 500) {
+ $this->logger->error('Exception: {exception}', [
+ 'exception' => $e,
+ ]);
+ } else {
+ $this->logger->debug('Exception: {exception}', [
+ 'exception' => $e,
+ ]);
+ }
+
$this->response->outputException($tracker, $e, $statusCode);
$this->redirectIfNeeded($requestSet);
}