From 4b9df2e9989afbb5dea875a90bd2d962f456debd Mon Sep 17 00:00:00 2001 From: Sarina Canelake Date: Fri, 6 Sep 2013 15:47:55 -0400 Subject: [PATCH] Add datadog tracking for bulk email --- lms/djangoapps/bulk_email/tasks.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/lms/djangoapps/bulk_email/tasks.py b/lms/djangoapps/bulk_email/tasks.py index 019fb00b2c..f3e8a9f4fa 100644 --- a/lms/djangoapps/bulk_email/tasks.py +++ b/lms/djangoapps/bulk_email/tasks.py @@ -16,6 +16,7 @@ from celery import task, current_task from celery.utils.log import get_task_logger from django.core.urlresolvers import reverse from statsd import statsd +from dogapi import dog_stats_api from bulk_email.models import ( CourseEmail, Optout, CourseEmailTemplate, @@ -116,6 +117,13 @@ def course_email(email_id, to_list, course_title, course_url, image_url, throttl Sends to all addresses contained in to_list. Emails are sent multi-part, in both plain text and html. """ + with dog_stats_api.timer('course_email.single_task.time.overall', tags=[_statsd_tag(course_title)]): + _send_course_email(email_id, to_list, course_title, course_url, image_url, throttle) + +def _send_course_email(email_id, to_list, course_title, course_url, image_url, throttle): + """ + Performs the email sending task. + """ try: msg = CourseEmail.objects.get(id=email_id) except CourseEmail.DoesNotExist: @@ -181,7 +189,8 @@ def course_email(email_id, to_list, course_title, course_url, image_url, throttl time.sleep(0.2) try: - connection.send_messages([email_msg]) + with dog_stats_api.timer('course_email.single_send.time.overall', tags=[_statsd_tag(course_title)]): + connection.send_messages([email_msg]) statsd.increment('course_email.sent', tags=[_statsd_tag(course_title)])