From 962ea9cc6969cba6e31aacdb85b36e906e999cce Mon Sep 17 00:00:00 2001 From: David Bomba Date: Tue, 9 Aug 2022 07:26:43 +1000 Subject: [PATCH] Capture sending metrics --- app/Jobs/Cron/RecurringInvoicesCron.php | 6 +++++- app/Jobs/RecurringInvoice/SendRecurring.php | 6 +++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app/Jobs/Cron/RecurringInvoicesCron.php b/app/Jobs/Cron/RecurringInvoicesCron.php index 330efe77dde9..ca65974bdefa 100644 --- a/app/Jobs/Cron/RecurringInvoicesCron.php +++ b/app/Jobs/Cron/RecurringInvoicesCron.php @@ -40,7 +40,8 @@ class RecurringInvoicesCron public function handle() : void { /* Get all invoices where the send date is less than NOW + 30 minutes() */ - nlog('Sending recurring invoices '.Carbon::now()->format('Y-m-d h:i:s')); + $start = Carbon::now()->format('Y-m-d h:i:s'); + nlog('Sending recurring invoices '.$start); if (! config('ninja.db.multi_db_enabled')) { $recurring_invoices = RecurringInvoice::where('next_send_date', '<=', now()->toDateTimeString()) @@ -119,5 +120,8 @@ class RecurringInvoicesCron }); } } + + nlog("Recurring invoice send duration " . $start . " - " . Carbon::now()->format('Y-m-d h:i:s')); + } } diff --git a/app/Jobs/RecurringInvoice/SendRecurring.php b/app/Jobs/RecurringInvoice/SendRecurring.php index c67b28fd6e3f..c22127554ff2 100644 --- a/app/Jobs/RecurringInvoice/SendRecurring.php +++ b/app/Jobs/RecurringInvoice/SendRecurring.php @@ -127,7 +127,7 @@ class SendRecurring implements ShouldQueue $invoice->invitations->each(function ($invitation) use ($invoice) { if ($invitation->contact && ! $invitation->contact->trashed() && strlen($invitation->contact->email) >= 1 && $invoice->client->getSetting('auto_email_invoice')) { try { - EmailEntity::dispatch($invitation, $invoice->company)->delay(10); + EmailEntity::dispatch($invitation, $invoice->company)->delay(rand(10,20)); } catch (\Exception $e) { nlog($e->getMessage()); } @@ -140,13 +140,13 @@ class SendRecurring implements ShouldQueue if ($invoice->client->getSetting('auto_bill_date') == 'on_send_date' && $invoice->auto_bill_enabled) { nlog("attempting to autobill {$invoice->number}"); // $invoice->service()->autoBill(); - AutoBill::dispatch($invoice, $this->db)->delay(20); + AutoBill::dispatch($invoice, $this->db)->delay(rand(30,40)); } elseif ($invoice->client->getSetting('auto_bill_date') == 'on_due_date' && $invoice->auto_bill_enabled) { if ($invoice->due_date && Carbon::parse($invoice->due_date)->startOfDay()->lte(now()->startOfDay())) { nlog("attempting to autobill {$invoice->number}"); // $invoice->service()->autoBill(); - AutoBill::dispatch($invoice, $this->db)->delay(20); + AutoBill::dispatch($invoice, $this->db)->delay(rand(30,40)); } } }