PHP code example of dmeys / request-logger
1. Go to this page and download the library: Download dmeys/request-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/ */
dmeys / request-logger example snippets
return [
'locale' => env('REQUEST_LOGGER_LOCALE', 'en'), // available 'en', 'ua'
'middleware' => [
\Dmeys\RequestLogger\Http\Middleware\BaseAuth::class,
],
'base_auth' => [
'login' => env('REQUEST_LOGGER_LOGIN', 'login'),
'password' => env('REQUEST_LOGGER_PASSWORD', 'password'),
],
'timezone' => env('REQUEST_LOGGER_TIMEZONE', env('APP_TIMEZONE', config('app.timezone', 'UTC'))),
'date_format' => env('REQUEST_LOGGER_DATE_FORMAT', 'Y-m-d'),
'time_format' => env('REQUEST_LOGGER_TIME_FORMAT', 'H:i:s.u'),
'log_keep_days' => env('REQUEST_LOGGER_KEEP_DAYS', 14),
'table_name' => 'request_logs',
'enabled' => env('REQUEST_LOGGER_ENABLED', true),
'ignore_paths' => [
'request-logs*',
'telescope*',
'nova-api*',
],
'hide_fields' => [
'request' => [
'headers' => [
'authorization',
'php-auth-user',
'php-auth-pw',
],
'content' => [
'password',
'token',
'access_token',
],
],
'response' => [
'content' => [
'password',
'token',
'access_token',
],
],
],
'replacer_hidden_fields' => '|^_-|',
];
php artisan migrate --path=/vendor/dmeys/request-logger/database/migrations/2021_11_05_000000_create_request_log_fingerprints_table.php
php artisan migrate --path=/vendor/dmeys/request-logger/database/migrations/2021_11_05_000000_create_request_logs_table.php
// in `app/Http/Kernel.php`
protected $middleware = [
// ...
\Dmeys\RequestLogger\Http\Middleware\RequestLogger::class
];
// in a routes file
Route::post('/test', function () {
//
})->middleware(\Dmeys\RequestLogger\Http\Middleware\RequestLogger::class);
//in 'bootstrap/app.php'
$app->register(\Dmeys\RequestLogger\RequestLoggerServiceProvider::class);
return [
'locale' => env('REQUEST_LOGGER_LOCALE', 'en'), // available 'en', 'ua'
'middleware' => [
\Dmeys\RequestLogger\Http\Middleware\BaseAuth::class,
],
'base_auth' => [
'login' => env('REQUEST_LOGGER_LOGIN', 'login'),
'password' => env('REQUEST_LOGGER_PASSWORD', 'password'),
],
'timezone' => env('REQUEST_LOGGER_TIMEZONE', env('APP_TIMEZONE', config('app.timezone', 'UTC'))),
'date_format' => env('REQUEST_LOGGER_DATE_FORMAT', 'Y-m-d'),
'time_format' => env('REQUEST_LOGGER_TIME_FORMAT', 'H:i:s.u'),
'log_keep_days' => env('REQUEST_LOGGER_KEEP_DAYS', 14),
'table_name' => 'request_logs',
'enabled' => env('REQUEST_LOGGER_ENABLED', true),
'ignore_paths' => [
'request-logs*',
'telescope*',
'nova-api*',
],
'hide_fields' => [
'request' => [
'headers' => [
'authorization',
'php-auth-user',
'php-auth-pw',
],
'content' => [
'password',
'token',
'access_token',
],
],
'response' => [
'content' => [
'password',
'token',
'access_token',
],
],
],
'replacer_hidden_fields' => '|^_-|',
];
//in 'bootstrap/app.php'
$app->configure('request-logger');
// in 'bootstrap/app.php'
$app->routeMiddleware([
// ...
'request-logger' => \Dmeys\RequestLogger\Http\Middleware\RequestLogger::class,
]);
// in a routes file
Route::post('/test', ['uses' => 'TestController@test', 'middleware' => ['request-logger']]);
$schedule->command('request-logs:clear')->daily();
final class ConfigureRequestLoggerMiddleware
{
public function handle(Request $request, Closure $next)
{
configureRequestLoggerCustomFields(function () use ($request) {
return ['user_id' => $request->user()->id ?? null];
});
return $next($request);
}
}
bash
php artisan vendor:publish --provider="Dmeys\RequestLogger\RequestLoggerServiceProvider"
bash
php artisan vendor:publish --provider="Dmeys\RequestLogger\RequestLoggerServiceProvider"
bash
php artisan migrate
bash
php artisan storage:link
bash
php vendor/bin/phpunit