diff --git a/app/celery/scheduled_tasks.py b/app/celery/scheduled_tasks.py index d6397754e..7c2a88260 100644 --- a/app/celery/scheduled_tasks.py +++ b/app/celery/scheduled_tasks.py @@ -273,14 +273,16 @@ def check_for_services_with_high_failure_rates_or_sending_to_tv_numbers(): len(services_with_failures) ) for service in services_with_failures: - message += "service id: {} failure rate: {},\n".format(service["id"], service["permanent_failure_rate"]) + service_dashboard = current_app.config['ADMIN_BASE_URL'] + "/services/" + service["id"] + message += "service: {} failure rate: {},\n".format(service_dashboard, service["permanent_failure_rate"]) elif services_sending_to_tv_numbers: message += "{} service(s) have sent over 100 sms messages to tv numbers in last 24 hours:\n".format( len(services_sending_to_tv_numbers) ) for service in services_sending_to_tv_numbers: - message += "service id: {}, count of sms to tv numbers: {},\n".format( - service.service_id, service.notification_count + service_dashboard = current_app.config['ADMIN_BASE_URL'] + "/services/" + service.service_id + message += "service: {} count of sms to tv numbers: {},\n".format( + service_dashboard, service.notification_count ) if services_with_failures or services_sending_to_tv_numbers: diff --git a/tests/app/celery/test_scheduled_tasks.py b/tests/app/celery/test_scheduled_tasks.py index 3ebf89b47..e6703e4d5 100644 --- a/tests/app/celery/test_scheduled_tasks.py +++ b/tests/app/celery/test_scheduled_tasks.py @@ -20,7 +20,7 @@ from app.celery.scheduled_tasks import ( check_for_services_with_high_failure_rates_or_sending_to_tv_numbers, switch_current_sms_provider_on_slow_delivery, ) -from app.config import QueueNames, TaskNames +from app.config import QueueNames, TaskNames, Config from app.dao.jobs_dao import dao_get_job_by_id from app.dao.notifications_dao import dao_get_scheduled_notifications from app.dao.provider_details_dao import get_provider_details_by_identifier @@ -512,13 +512,17 @@ MockServicesSendingToTVNumbers = namedtuple( [{"id": "123", "permanent_failure_rate": 0.3}], [], "1 service(s) have had high permanent-failure rates for sms messages in last " - "24 hours:\nservice id: 123 failure rate: 0.3,\n" + "24 hours:\nservice: {} failure rate: 0.3,\n".format( + Config.ADMIN_BASE_URL + "/services/" + "123" + ) ], [ [], [MockServicesSendingToTVNumbers("123", 300)], "1 service(s) have sent over 100 sms messages to tv numbers in last 24 hours:\n" - "service id: 123, count of sms to tv numbers: 300,\n" + "service: {} count of sms to tv numbers: 300,\n".format( + Config.ADMIN_BASE_URL + "/services/" + "123" + ) ] ]) def test_check_for_services_with_high_failure_rates_or_sending_to_tv_numbers(