diff --git a/app/celery/letters_pdf_tasks.py b/app/celery/letters_pdf_tasks.py index b78028596..046a24d98 100644 --- a/app/celery/letters_pdf_tasks.py +++ b/app/celery/letters_pdf_tasks.py @@ -120,6 +120,7 @@ def get_letters_pdf(template, contact_block, filename, values): @notify_celery.task(name='collate-letter-pdfs-to-be-sent') @cronitor("collate-letter-pdfs-to-be-sent") +@statsd(namespace="tasks") def collate_letter_pdfs_to_be_sent(): """ Finds all letters which are still waiting to be sent to DVLA for printing diff --git a/app/celery/scheduled_tasks.py b/app/celery/scheduled_tasks.py index a32551e08..78b9b312c 100644 --- a/app/celery/scheduled_tasks.py +++ b/app/celery/scheduled_tasks.py @@ -232,6 +232,13 @@ def check_precompiled_letter_state(): @notify_celery.task(name='check-templated-letter-state') @statsd(namespace="tasks") def check_templated_letter_state(): + # renaming task for clarity. Next deploy will remove this task. + check_letters_created_yesterday_are_sending() + + +@notify_celery.task(name='check-letters-created-yesterday-are-sending') +@statsd(namespace="tasks") +def check_letters_created_yesterday_are_sending(): letters = dao_old_letters_with_created_status() if len(letters) > 0: diff --git a/app/dao/notifications_dao.py b/app/dao/notifications_dao.py index 645bf9090..9ac40a330 100644 --- a/app/dao/notifications_dao.py +++ b/app/dao/notifications_dao.py @@ -731,6 +731,7 @@ def notifications_not_yet_sent(should_be_sending_after_seconds, notification_typ return notifications +@statsd(namespace="dao") def dao_get_letters_to_be_printed(print_run_deadline): """ Return all letters created before the print run deadline that have not yet been sent diff --git a/tests/app/celery/test_scheduled_tasks.py b/tests/app/celery/test_scheduled_tasks.py index 81c3ee8ce..e0da79a74 100644 --- a/tests/app/celery/test_scheduled_tasks.py +++ b/tests/app/celery/test_scheduled_tasks.py @@ -15,10 +15,10 @@ from app.celery.scheduled_tasks import ( send_scheduled_notifications, replay_created_notifications, check_precompiled_letter_state, - check_templated_letter_state, check_for_missing_rows_in_completed_jobs, check_for_services_with_high_failure_rates_or_sending_to_tv_numbers, switch_current_sms_provider_on_slow_delivery, + check_letters_created_yesterday_are_sending ) from app.config import QueueNames, TaskNames, Config from app.dao.jobs_dao import dao_get_job_by_id @@ -385,7 +385,7 @@ def test_check_precompiled_letter_state(mocker, sample_letter_template): @freeze_time("2019-05-30 14:00:00") -def test_check_templated_letter_state_during_bst(mocker, sample_letter_template): +def test_check_letters_created_yesterday_are_sending(mocker, sample_letter_template): mock_logger = mocker.patch('app.celery.tasks.current_app.logger.exception') mock_create_ticket = mocker.patch('app.celery.nightly_tasks.zendesk_client.create_ticket') @@ -396,7 +396,7 @@ def test_check_templated_letter_state_during_bst(mocker, sample_letter_template) create_notification(template=sample_letter_template, status='delivered', created_at=datetime(2019, 5, 28, 10, 0)) create_notification(template=sample_letter_template, created_at=datetime(2019, 5, 30, 10, 0)) - check_templated_letter_state() + check_letters_created_yesterday_are_sending() message = "2 letters were created before 17.30 yesterday and still have 'created' status. " \ "Notifications: ['{}', '{}']".format(noti_1.id, noti_2.id) @@ -410,7 +410,7 @@ def test_check_templated_letter_state_during_bst(mocker, sample_letter_template) @freeze_time("2019-01-30 14:00:00") -def test_check_templated_letter_state_during_utc(mocker, sample_letter_template): +def test_check_letters_created_yesterday_are_sending_during_utc(mocker, sample_letter_template): mock_logger = mocker.patch('app.celery.tasks.current_app.logger.exception') mock_create_ticket = mocker.patch('app.celery.scheduled_tasks.zendesk_client.create_ticket') @@ -421,7 +421,7 @@ def test_check_templated_letter_state_during_utc(mocker, sample_letter_template) create_notification(template=sample_letter_template, status='delivered', created_at=datetime(2019, 1, 29, 10, 0)) create_notification(template=sample_letter_template, created_at=datetime(2019, 1, 30, 10, 0)) - check_templated_letter_state() + check_letters_created_yesterday_are_sending() message = "2 letters were created before 17.30 yesterday and still have 'created' status. " \ "Notifications: ['{}', '{}']".format(noti_1.id, noti_2.id)