1. Go to this page and download the library: Download spatie/laravel-http-logger library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
spatie / laravel-http-logger example snippets
return [
/*
* Determine if the http-logger middleware should be enabled.
*/
'enabled' => env('HTTP_LOGGER_ENABLED', true),
/*
* The log profile which determines whether a request should be logged.
* It should implement `LogProfile`.
*/
'log_profile' => \Spatie\HttpLogger\LogNonGetRequests::class,
/*
* The log writer used to write the request to a log.
* It should implement `LogWriter`.
*/
'log_writer' => \Spatie\HttpLogger\DefaultLogWriter::class,
/*
* The log channel used to write the request.
*/
'log_channel' => env('LOG_CHANNEL', 'stack'),
/*
* The log level used to log the request.
*/
'log_level' => 'info',
/*
* Filter out body fields which will never be logged.
*/
'except' => [
'password',
'password_confirmation',
],
/*
* List of headers that will be sanitized. For example Authorization, Cookie, Set-Cookie...
*/
'sanitize_headers' => [],
];
// in a routes file
Route::post('/submit-form', function () {
//
})->middleware(\Spatie\HttpLogger\Middlewares\HttpLogger::class);
// Example implementation from `\Spatie\HttpLogger\LogNonGetRequests`
public function shouldLogRequest(Request $request): bool
{
return in_array(strtolower($request->method()), ['post', 'put', 'patch', 'delete']);
}
// Example implementation from `\Spatie\HttpLogger\DefaultLogWriter`
public function logRequest(Request $request): void
{
$method = strtoupper($request->getMethod());
$uri = $request->getPathInfo();
$bodyAsJson = json_encode($request->except(config('http-logger.except')));
$message = "{$method} {$uri} - {$bodyAsJson}";
Log::channel(config('http-logger.log_channel'))->info($message);
}