1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
<?php
/**
* Matomo - free/libre analytics platform
*
* @link https://matomo.org
* @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
namespace Piwik\Plugins\Monolog\Processor;
use Monolog\LogRecord;
use Piwik\Common;
use Piwik\FrontController;
/**
* Adds a unique "request id" to the log message to follow log entries for each HTTP request.
*/
class RequestIdProcessor
{
private $currentRequestKey;
public function __invoke(LogRecord $record)
{
if (empty($this->currentRequestKey)) {
if (Common::isPhpCliMode()) {
$this->currentRequestKey = Common::getProcessId();
} else {
$this->currentRequestKey = FrontController::getUniqueRequestId();
}
}
$record->extra['request_id'] = $this->currentRequestKey;
return $record;
}
}
|