From afb7affe4457c4021f4addfc02c8c9cbaadd692a Mon Sep 17 00:00:00 2001 From: Dillon Ngo Date: Tue, 25 Jun 2024 09:30:21 +0800 Subject: [PATCH] Laravel Vapor - Development environemnt specific only changes - logging with specific channel --- app/Http/Middleware/ApiResponseTimeLog.php | 3 +- app/Http/Middleware/WebResponseTimeLog.php | 3 +- config/logging.php | 40 +++++++++++++++++++--- 3 files changed, 40 insertions(+), 6 deletions(-) diff --git a/app/Http/Middleware/ApiResponseTimeLog.php b/app/Http/Middleware/ApiResponseTimeLog.php index aae6d91e..22b650de 100644 --- a/app/Http/Middleware/ApiResponseTimeLog.php +++ b/app/Http/Middleware/ApiResponseTimeLog.php @@ -2,6 +2,7 @@ namespace App\Http\Middleware; +use App\Classes\General\LogHelper; use Closure; use Illuminate\Http\Request; use Illuminate\Support\Facades\Log; @@ -22,7 +23,7 @@ class ApiResponseTimeLog $endTime = microtime(true); // End time $responseTime = $endTime - $startTime; // Calculate the response time - Log::channel('apiResponseTimeLog')->info("\nRequest to route: {$uri} \nRoute name: {$routeName} \nTime Taken: " . number_format($responseTime * 1000, 2) . "ms\n"); + LogHelper::channel('apiResponseTimeLog')->info("\nRequest to route: {$uri} \nRoute name: {$routeName} \nTime Taken: " . number_format($responseTime * 1000, 2) . "ms\n"); return $response; } diff --git a/app/Http/Middleware/WebResponseTimeLog.php b/app/Http/Middleware/WebResponseTimeLog.php index 9a4c3e6e..4c1e927e 100644 --- a/app/Http/Middleware/WebResponseTimeLog.php +++ b/app/Http/Middleware/WebResponseTimeLog.php @@ -4,6 +4,7 @@ namespace App\Http\Middleware; use Closure; use Illuminate\Http\Request; +use App\Classes\General\LogHelper; use Illuminate\Support\Facades\Log; class WebResponseTimeLog @@ -22,7 +23,7 @@ class WebResponseTimeLog $endTime = microtime(true); // End time $responseTime = $endTime - $startTime; // Calculate the response time - Log::channel('webResponseTimeLog')->info("\nRequest to route: {$uri} \nRoute name: {$routeName} \nTime Taken: " . number_format($responseTime * 1000, 2) . "ms\n"); + LogHelper::channel('webResponseTimeLog')->info("\nRequest to route: {$uri} \nRoute name: {$routeName} \nTime Taken: " . number_format($responseTime * 1000, 2) . "ms\n"); return $response; } diff --git a/config/logging.php b/config/logging.php index 3d2c5ac9..7ab68d08 100644 --- a/config/logging.php +++ b/config/logging.php @@ -123,10 +123,6 @@ return [ 'path' => storage_path('logs/webResponseTimeLog.log'), 'level' => 'info', ], - 'guzzleShippingPortal' => [ - 'driver' => 'errorlog', - 'level' => 'debug', - ], 'vue_polling' => [ 'driver' => 'single', @@ -160,6 +156,42 @@ return [ 'groupNamePrefix' => env('CLOUDWATCH_LOGGROUP_PREFIX'), ], + 'apiResponseTimeLog_vapor' => [ + 'driver' => 'custom', + 'via' => \App\Logging\CloudWatchLoggerFactory::class, + 'formatter' => Monolog\Formatter\JsonFormatter::class, + 'cloudwatch_stream_name' => 'apiResponseTimeLog_vapor', + 'sdk' => [ + 'region' => env('AWS_MY_REGION'), + 'version' => 'latest', + 'credentials' => [ + 'key' => env('AWS_CW_ACCESS'), + 'secret' => env('AWS_CW_SECRET') + ] + ], + 'retention' => 31, + 'level' => 'debug', + 'groupNamePrefix' => env('CLOUDWATCH_LOGGROUP_PREFIX'), + ], + + 'webResponseTimeLog_vapor' => [ + 'driver' => 'custom', + 'via' => \App\Logging\CloudWatchLoggerFactory::class, + 'formatter' => Monolog\Formatter\JsonFormatter::class, + 'cloudwatch_stream_name' => 'webResponseTimeLog_vapor', + 'sdk' => [ + 'region' => env('AWS_MY_REGION'), + 'version' => 'latest', + 'credentials' => [ + 'key' => env('AWS_CW_ACCESS'), + 'secret' => env('AWS_CW_SECRET') + ] + ], + 'retention' => 31, + 'level' => 'debug', + 'groupNamePrefix' => env('CLOUDWATCH_LOGGROUP_PREFIX'), + ], + 'vue_polling_vapor' => [ 'driver' => 'custom', 'via' => \App\Logging\CloudWatchLoggerFactory::class,