Skip to content

Commit f3cde48

Browse files
authored
Merge pull request #1665 from alphagov/ldeb-update-submission-delivered-at
Save SES message delivery time to submission record
2 parents d01f713 + 7c676e3 commit f3cde48

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

app/jobs/receive_submission_deliveries_job.rb

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,10 +60,10 @@ def process_messages(sqs_client, queue_url, messages)
6060

6161
submission = Submission.find_by!(mail_message_id: ses_message_id)
6262

63-
process_delivery(submission)
63+
delivery_time = Time.zone.parse(ses_message["delivery"]["timestamp"])
64+
process_delivery(submission, delivered_at: delivery_time)
6465
sqs_client.delete_message(queue_url: queue_url, receipt_handle: receipt_handle)
6566

66-
delivery_time = Time.zone.parse(ses_message["delivery"]["timestamp"])
6767
submission_duration_ms = ((delivery_time - submission.created_at) * 1000).round
6868
CloudWatchService.record_submission_delivery_latency_metric(submission_duration_ms, "Email")
6969
rescue StandardError => e
@@ -74,9 +74,11 @@ def process_messages(sqs_client, queue_url, messages)
7474
end
7575
end
7676

77-
def process_delivery(submission)
77+
def process_delivery(submission, **attributes)
7878
set_submission_logging_attributes(submission)
7979

80+
submission.update! attributes
81+
8082
EventLogger.log_form_event("submission_delivered")
8183
end
8284
end

spec/jobs/receive_submission_deliveries_job_spec.rb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,11 @@
111111
))
112112
end
113113

114+
it "saves the submission delivery time to the submission record" do
115+
perform_enqueued_jobs
116+
expect(submission.reload.delivered_at).to eq ses_delivery_timestamp
117+
end
118+
114119
it "sends cloudwatch metric for submission delivery time" do
115120
perform_enqueued_jobs
116121
# latency is ses_delivery_timestamp - submission.created_at

0 commit comments

Comments
 (0)