Unified logging

This commit is contained in:
2024-03-11 01:20:45 +01:00
parent 56ddab0cd5
commit c31c55fafd
3 changed files with 35 additions and 11 deletions

View File

@ -6,6 +6,7 @@ use NoccyLabs\Mercureact\Configuration;
use NoccyLabs\Mercureact\Http\Exception\SecurityException;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Log\LoggerInterface;
use React\Http\Message\Response;
use React\Promise\Promise;
use React\Promise\PromiseInterface;
@ -15,7 +16,8 @@ class ResponseMiddleware
{
public function __construct(
private Configuration $config
private Configuration $config,
private LoggerInterface $logger,
)
{
@ -60,13 +62,18 @@ class ResponseMiddleware
assert("\$response instanceof ResponseInterface");
$host = ($request->getServerParams()['SERVER_ADDR']??"");
//. ":" . ($request->getServerParams()['SERVER_PORT']??"80");
fprintf(STDOUT, "%s %3d %s %s %d\n",
$this->logger->debug(sprintf("%s %s %s → %3d (%d)",
$request->getServerParams()['REMOTE_ADDR'],
$response->getStatusCode(),
$request->getMethod(),
$request->getUri()->getPath(),
$response->getStatusCode(),
strlen($response->getBody())
);
), [
'remote' => $request->getServerParams()['REMOTE_ADDR'],
'status' => $response->getStatusCode(),
'method' => $request->getMethod(),
'path' => $request->getUri()->getPath(),
]);
return $response
// ->withAddedHeader('Link', '<https://'.$host.'/.well-known/mercure>; rel="mercure"')
// ->withAddedHeader('Link', '<wss://'.$host.'/.well-known/mercure>; rel="mercure+ws"')