Skip to content

PSR-15 middleware for log PSR-7 HTTP messages using PSR-3 logger

License

Notifications You must be signed in to change notification settings

gardziejewskik/log-http-messages

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

log-http-messages middleware Build Status

PSR-15 middleware for log PSR-7 HTTP messages using PSR-3 logger

This middleware provide framework-agnostic possibility to log request and response messages to PSR-3 logger. Support double and single (PSR-15) pass middleware.

Installation

composer require php-middleware/log-http-messages

To log http messages you need pass into LogRequestMiddleware implementation of PhpMiddleware\LogHttpMessages\Formatter\ServerRequestFormatter, PhpMiddleware\LogHttpMessages\Formatter\ResponseFormatter, instance Psr\Log\LoggerInterface and add this middleware to your middleware runner. You can also set log level (Psr\Log\LogLevel::INFO as default) and log message (Request/Response as default).

Provided implementation of formatters:

  • PhpMiddleware\LogHttpMessages\Formatter\EmptyMessageFormatter,
  • PhpMiddleware\LogHttpMessages\Formatter\ZendDiactorosToArrayMessageFormatter,
  • PhpMiddleware\LogHttpMessages\Formatter\ZendDiactorosToStringMessageFormatter.
$formatter = PhpMiddleware\LogHttpMessages\Formatter\ZendDiactorosToArrayMessageFormatter();
$logMiddleware = new PhpMiddleware\LogHttpMessages\LogMiddleware($formatter, $formatter, $logger);

$app = new MiddlewareRunner();
$app->add($logMiddleware);
$app->run($request, $response);

It's just works with any modern php framework and logger!

Middleware tested on:

Middleware should works with:

And any other modern framework supported PSR-15 middlewares and PSR-7 and PSR-3 implementation logger.

About

PSR-15 middleware for log PSR-7 HTTP messages using PSR-3 logger

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%