/
ApiLoggerMiddleware.php
45 lines (37 loc) · 1.03 KB
/
ApiLoggerMiddleware.php
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
38
39
40
41
42
43
44
45
<?php
namespace Concrete\Core\Http\Middleware;
use Concrete\Core\Logging\Channels;
use Concrete\Core\Logging\LoggerAwareInterface;
use Concrete\Core\Logging\LoggerAwareTrait;
use Psr\Log\LoggerInterface;
use Symfony\Component\HttpFoundation\Request;
/**
* Class ApiLoggerMiddleware
*/
class ApiLoggerMiddleware implements MiddlewareInterface, LoggerAwareInterface
{
use LoggerAwareTrait;
/**
* @var LoggerInterface
*/
protected $logger;
/**
* @return string
*/
public function getLoggerChannel()
{
return Channels::CHANNEL_API;
}
/**
* Process the request and return a response
* @param \Symfony\Component\HttpFoundation\Request $request
* @param DelegateInterface $frame
* @return \Symfony\Component\HttpFoundation\Response
*/
public function process(Request $request, DelegateInterface $frame)
{
// log request headers for debugging proxies issues
$this->logger->debug($request->headers);
return $frame->next($request);
}
}