mirror of
https://github.com/bitinflow/expose.git
synced 2026-03-13 21:45:55 +00:00
wip
This commit is contained in:
@@ -32,7 +32,6 @@ class CliRequestLogger extends Logger
|
||||
|
||||
public function logRequest(LoggedRequest $loggedRequest)
|
||||
{
|
||||
return;
|
||||
if ($this->requests->has($loggedRequest->id())) {
|
||||
$this->requests[$loggedRequest->id()] = $loggedRequest;
|
||||
} else {
|
||||
|
||||
@@ -94,6 +94,11 @@ class LoggedRequest implements \JsonSerializable
|
||||
$this->additionalData = array_merge($this->additionalData, $data);
|
||||
}
|
||||
|
||||
public function getAdditionalData(): array
|
||||
{
|
||||
return $this->additionalData;
|
||||
}
|
||||
|
||||
protected function isBinary(string $string): bool
|
||||
{
|
||||
return preg_match('~[^\x20-\x7E\t\r\n]~', $string) > 0;
|
||||
@@ -122,26 +127,21 @@ class LoggedRequest implements \JsonSerializable
|
||||
}
|
||||
}
|
||||
|
||||
public function id()
|
||||
public function id(): string
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
public function getRequestData()
|
||||
public function getRequestData(): ?string
|
||||
{
|
||||
return $this->rawRequest;
|
||||
}
|
||||
|
||||
public function getResponse()
|
||||
public function getResponse(): ?Response
|
||||
{
|
||||
return $this->parsedResponse;
|
||||
}
|
||||
|
||||
protected function getResponseBody()
|
||||
{
|
||||
return \Laminas\Http\Response::fromString($this->rawResponse)->getBody();
|
||||
}
|
||||
|
||||
protected function getPost()
|
||||
{
|
||||
$postData = [];
|
||||
|
||||
@@ -19,6 +19,8 @@ class RequestLogger
|
||||
/** @var CliRequestLogger */
|
||||
protected $cliRequestLogger;
|
||||
|
||||
const MAX_LOGGED_REQUESTS = 10;
|
||||
|
||||
public function __construct(Browser $browser, CliRequestLogger $cliRequestLogger)
|
||||
{
|
||||
$this->client = $browser;
|
||||
@@ -32,17 +34,19 @@ class RequestLogger
|
||||
});
|
||||
}
|
||||
|
||||
public function logRequest(string $rawRequest, Request $request)
|
||||
public function logRequest(string $rawRequest, Request $request): LoggedRequest
|
||||
{
|
||||
$loggedRequest = new LoggedRequest($rawRequest, $request);
|
||||
|
||||
array_unshift($this->requests, $loggedRequest);
|
||||
|
||||
$this->requests = array_slice($this->requests, 0, 10);
|
||||
$this->requests = array_slice($this->requests, 0, static::MAX_LOGGED_REQUESTS);
|
||||
|
||||
$this->cliRequestLogger->logRequest($loggedRequest);
|
||||
|
||||
$this->pushLogs();
|
||||
|
||||
return $loggedRequest;
|
||||
}
|
||||
|
||||
public function logResponse(Request $request, string $rawResponse)
|
||||
@@ -59,7 +63,7 @@ class RequestLogger
|
||||
}
|
||||
}
|
||||
|
||||
public function getData()
|
||||
public function getData(): array
|
||||
{
|
||||
return $this->requests;
|
||||
}
|
||||
@@ -73,6 +77,7 @@ class RequestLogger
|
||||
|
||||
public function pushLogs()
|
||||
{
|
||||
// TODO: Make dashboard part configurable
|
||||
$this
|
||||
->client
|
||||
->post(
|
||||
|
||||
Reference in New Issue
Block a user