From c8cf057ebae4ad0bbe53683cef1d90e2dc45cbfc Mon Sep 17 00:00:00 2001 From: Ben Thorner Date: Tue, 14 Dec 2021 12:38:25 +0000 Subject: [PATCH] Record providers we time out notifications for This will help us monitor issues with delivery receipts and keep track of provider performance over time. I'm not concerned about performance here: - The number of notifications to time out is usually small. - This task only runs once a day. - Calls to StatsD are quick and cheap. --- app/celery/nightly_tasks.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/celery/nightly_tasks.py b/app/celery/nightly_tasks.py index 15f96b4e3..5479baff3 100644 --- a/app/celery/nightly_tasks.py +++ b/app/celery/nightly_tasks.py @@ -8,7 +8,7 @@ from notifications_utils.clients.zendesk.zendesk_client import ( from sqlalchemy import func from sqlalchemy.exc import SQLAlchemyError -from app import notify_celery, zendesk_client +from app import notify_celery, statsd_client, zendesk_client from app.aws import s3 from app.config import QueueNames from app.cronitor import cronitor @@ -123,6 +123,7 @@ def timeout_notifications(): notifications = dao_timeout_notifications(cutoff_time) for notification in notifications: + statsd_client.incr(f'timeout-sending.{notification.sent_by}') check_and_queue_callback_task(notification) current_app.logger.info(