diff --git a/app/celery/scheduled_tasks.py b/app/celery/scheduled_tasks.py index 6ebaec87a..471cef23d 100644 --- a/app/celery/scheduled_tasks.py +++ b/app/celery/scheduled_tasks.py @@ -337,6 +337,7 @@ def delete_dvla_response_files_older_than_seven_days(): @notify_celery.task(name="raise-alert-if-letter-notifications-still-sending") @statsd(namespace="tasks") def raise_alert_if_letter_notifications_still_sending(): + today = datetime.utcnow().date() # Do nothing on the weekend @@ -356,15 +357,21 @@ def raise_alert_if_letter_notifications_still_sending(): ).count() if still_sending: - deskpro_client.create_ticket( - subject="Letters still sending", - message="There are {} letters in the 'sending' state from {}".format( - still_sending, - (today - timedelta(days=offset_days)).strftime('%A %d %B') - ), - ticket_type="alert" + message = "There are {} letters in the 'sending' state from {}".format( + still_sending, + (today - timedelta(days=offset_days)).strftime('%A %d %B') ) + # Only send alerts in production + if current_app.config['NOTIFY_ENVIRONMENT'] in ['production', 'test']: + deskpro_client.create_ticket( + subject="[{}] Letters still sending".format(current_app.config['NOTIFY_ENVIRONMENT']), + message=message, + ticket_type="alert" + ) + else: + current_app.logger.info(message) + @notify_celery.task(name="populate_monthly_billing") @statsd(namespace="tasks") diff --git a/tests/app/celery/test_scheduled_tasks.py b/tests/app/celery/test_scheduled_tasks.py index 0eb25f2a9..466be14a0 100644 --- a/tests/app/celery/test_scheduled_tasks.py +++ b/tests/app/celery/test_scheduled_tasks.py @@ -642,7 +642,7 @@ def test_alert_if_letter_notifications_still_sending(sample_letter_template, moc raise_alert_if_letter_notifications_still_sending() mock_celery.assert_called_once_with( - subject="Letters still sending", + subject="[test] Letters still sending", message="There are 1 letters in the 'sending' state from Tuesday 16 January", ticket_type='alert' ) @@ -660,7 +660,7 @@ def test_alert_if_letter_notifications_still_sending_only_alerts_sending(sample_ raise_alert_if_letter_notifications_still_sending() mock_celery.assert_called_once_with( - subject="Letters still sending", + subject="[test] Letters still sending", message="There are 1 letters in the 'sending' state from Tuesday 16 January", ticket_type='alert' ) @@ -703,7 +703,7 @@ def test_monday_alert_if_letter_notifications_still_sending_reports_friday_lette raise_alert_if_letter_notifications_still_sending() mock_celery.assert_called_once_with( - subject="Letters still sending", + subject="[test] Letters still sending", message="There are 2 letters in the 'sending' state from Friday 12 January", ticket_type='alert' )