Laravel Vapor - Development environemnt specific only changes - logging with specific channel (code sync from Exchange)

This commit is contained in:
Dillon Ngo
2024-06-25 11:07:18 +08:00
parent 5086492d32
commit 99b6c06de4
4 changed files with 71 additions and 14 deletions
@@ -34,6 +34,7 @@ use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
use Mccarlosen\LaravelMpdf\Facades\LaravelMpdf;
use App\Classes\General\LogHelper;
class CreateInvoiceTransactionProcessor
{
@@ -96,7 +97,7 @@ class CreateInvoiceTransactionProcessor
$base_price_constant = $this->fetchesSegmentConstant->execute(['segment_id' => 1, 'reference' => SegmentConstants::BASE_PRICE]);
$warehouse_rate_constant = $this->fetchesSegmentConstant->execute(['segment_id' => 1, 'reference' => SegmentConstants::WAREHOUSE_RATE]);
$state_rate_constant = $this->fetchesSegmentConstant->execute(['segment_id' => 1, 'reference' => SegmentConstants::STATE_RATE]);
Log::channel('priceCbmLog')->info(json_encode($state_rate_constant));
LogHelper::channel('priceCbmLog')->info(json_encode($state_rate_constant));
$center_postcode_constant = $this->fetchesSegmentConstant->execute(['segment_id' => 1, 'reference' => SegmentConstants::CENTER_POSTCODE]);
$outstation_postcode_constant = $this->fetchesSegmentConstant->execute(['segment_id' => 1, 'reference' => SegmentConstants::OUTSTATION_POSTCODE]);
@@ -124,18 +125,18 @@ class CreateInvoiceTransactionProcessor
$warehouse_rate = is_object($selected_warehouse_rate) ? $selected_warehouse_rate->amount : 0;
$stateId = $address->state_id;
Log::channel('priceCbmLog')->info('stateId: ' . $stateId);
LogHelper::channel('priceCbmLog')->info('stateId: ' . $stateId);
$state_rate_constant = $this->getConstantByKey($state_rate_constant, $stateId);
Log::channel('priceCbmLog')->info('state_rate_constant: ' . json_encode($state_rate_constant));
LogHelper::channel('priceCbmLog')->info('state_rate_constant: ' . json_encode($state_rate_constant));
// get $state_rate
$postcode = $address->postcode;
$this->checkPostcodeExistInConstant($center_postcode_constant, $postcode) === true ? $state_select = 'center' : '' ;
Log::channel('priceCbmLog')->info('state_select: ' . $state_select);
LogHelper::channel('priceCbmLog')->info('state_select: ' . $state_select);
$this->checkPostcodeExistInConstant($outstation_postcode_constant, $postcode) === true ? $state_select = 'outstation' : '' ;
Log::channel('priceCbmLog')->info('state_select: ' . $state_select);
LogHelper::channel('priceCbmLog')->info('state_select: ' . $state_select);
$state_rate_constant = (array)$state_rate_constant;
Log::channel('priceCbmLog')->info('state_rate_constant: ' . json_encode($state_rate_constant));
LogHelper::channel('priceCbmLog')->info('state_rate_constant: ' . json_encode($state_rate_constant));
$state_rate = $state_select == '' ? 0 : $state_rate_constant[$state_select];
$container = $packing_list->containers()->first();
@@ -174,13 +175,13 @@ class CreateInvoiceTransactionProcessor
$minimum_charge = 0;
}
Log::channel('priceCbmLog')->info('$base_price: ' . $base_price);
Log::channel('priceCbmLog')->info('$segment_price: ' . $segment_price);
Log::channel('priceCbmLog')->info('$warehouse_rate: ' . $warehouse_rate);
Log::channel('priceCbmLog')->info('$state_rate: ' . $state_rate);
LogHelper::channel('priceCbmLog')->info('$base_price: ' . $base_price);
LogHelper::channel('priceCbmLog')->info('$segment_price: ' . $segment_price);
LogHelper::channel('priceCbmLog')->info('$warehouse_rate: ' . $warehouse_rate);
LogHelper::channel('priceCbmLog')->info('$state_rate: ' . $state_rate);
$price_cbm = $base_price + $segment_price + $warehouse_rate + $state_rate;
Log::channel('priceCbmLog')->info('$price_cbm: ' . $price_cbm);
Log::channel('priceCbmLog')->info('');
LogHelper::channel('priceCbmLog')->info('$price_cbm: ' . $price_cbm);
LogHelper::channel('priceCbmLog')->info('');
$total_cbm = $price_cbm * ($cbm + $minimum_charge + $over_weight_cbm);
+2 -1
View File
@@ -5,6 +5,7 @@ namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
use App\Classes\General\LogHelper;
class ApiResponseTimeLog
{
@@ -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;
}
+2 -1
View File
@@ -5,6 +5,7 @@ namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
use App\Classes\General\LogHelper;
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;
}
+54
View File
@@ -155,18 +155,72 @@ return [
'level' => 'info',
],
'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' => 3, //cief todo: retention to be updated
'level' => 'debug',
'groupNamePrefix' => env('CLOUDWATCH_LOGGROUP_PREFIX'),
],
'webResponseTimeLog' => [
'driver' => 'single',
'path' => storage_path('logs/webResponseTimeLog.log'),
'level' => 'info',
],
'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' => 3, //cief todo: retention to be updated
'level' => 'debug',
'groupNamePrefix' => env('CLOUDWATCH_LOGGROUP_PREFIX'),
],
'priceCbmLog' => [
'driver' => 'single',
'path' => storage_path('logs/priceCbmLog.log'),
'level' => 'info',
],
'priceCbmLog_vapor' => [
'driver' => 'custom',
'via' => \App\Logging\CloudWatchLoggerFactory::class,
'formatter' => Monolog\Formatter\JsonFormatter::class,
'cloudwatch_stream_name' => 'priceCbmLog_vapor',
'sdk' => [
'region' => env('AWS_MY_REGION'),
'version' => 'latest',
'credentials' => [
'key' => env('AWS_CW_ACCESS'),
'secret' => env('AWS_CW_SECRET')
]
],
'retention' => 3, //cief todo: retention to be updated
'level' => 'debug',
'groupNamePrefix' => env('CLOUDWATCH_LOGGROUP_PREFIX'),
],
'deletePaidGroupOrder' => [
'driver' => 'single',
'path' => storage_path('logs/deletePaidGroupOrder.log'),