mirror of
https://github.com/GSA/notifications-api.git
synced 2026-01-30 06:21:50 -05:00
Statsd timings were being passed a timedelta instead for float for
milliseconds. Bugfix for https://www.pivotaltracker.com/story/show/126852733
This commit is contained in:
@@ -103,7 +103,8 @@ def send_sms_to_provider(self, service_id, notification_id):
|
|||||||
)
|
)
|
||||||
statsd_client.incr("notifications.tasks.send-sms-to-provider")
|
statsd_client.incr("notifications.tasks.send-sms-to-provider")
|
||||||
statsd_client.timing("notifications.tasks.send-sms-to-provider.task-time", monotonic() - task_start)
|
statsd_client.timing("notifications.tasks.send-sms-to-provider.task-time", monotonic() - task_start)
|
||||||
statsd_client.timing("notifications.sms.total-time", datetime.utcnow() - notification.created_at)
|
delta_milliseconds = (datetime.utcnow() - notification.created_at).total_seconds() * 1000
|
||||||
|
statsd_client.timing("notifications.sms.total-time", delta_milliseconds)
|
||||||
|
|
||||||
|
|
||||||
def provider_to_use(notification_type, notification_id):
|
def provider_to_use(notification_type, notification_id):
|
||||||
@@ -184,4 +185,5 @@ def send_email_to_provider(self, service_id, notification_id):
|
|||||||
)
|
)
|
||||||
statsd_client.incr("notifications.tasks.send-email-to-provider")
|
statsd_client.incr("notifications.tasks.send-email-to-provider")
|
||||||
statsd_client.timing("notifications.tasks.send-email-to-provider.task-time", monotonic() - task_start)
|
statsd_client.timing("notifications.tasks.send-email-to-provider.task-time", monotonic() - task_start)
|
||||||
statsd_client.timing("notifications.email.total-time", datetime.utcnow() - notification.created_at)
|
delta_milliseconds = (datetime.utcnow() - notification.created_at).total_seconds() * 1000
|
||||||
|
statsd_client.timing("notifications.email.total-time", delta_milliseconds)
|
||||||
|
|||||||
@@ -297,7 +297,7 @@ def test_should_not_send_to_provider_when_status_is_not_created(notify_db, notif
|
|||||||
app.celery.research_mode_tasks.send_sms_response.apply_async.assert_not_called()
|
app.celery.research_mode_tasks.send_sms_response.apply_async.assert_not_called()
|
||||||
|
|
||||||
|
|
||||||
def test_statsd_updates(notify_db, notify_db_session, sample_service, sample_notification, mocker):
|
def test_send_sms_statsd_updates(notify_db, notify_db_session, sample_service, sample_notification, mocker):
|
||||||
mocker.patch('app.statsd_client.incr')
|
mocker.patch('app.statsd_client.incr')
|
||||||
mocker.patch('app.statsd_client.timing')
|
mocker.patch('app.statsd_client.timing')
|
||||||
mocker.patch('app.mmg_client.send_sms')
|
mocker.patch('app.mmg_client.send_sms')
|
||||||
@@ -309,11 +309,16 @@ def test_statsd_updates(notify_db, notify_db_session, sample_service, sample_not
|
|||||||
)
|
)
|
||||||
|
|
||||||
statsd_client.incr.assert_called_once_with("notifications.tasks.send-sms-to-provider")
|
statsd_client.incr.assert_called_once_with("notifications.tasks.send-sms-to-provider")
|
||||||
|
|
||||||
statsd_client.timing.assert_has_calls([
|
statsd_client.timing.assert_has_calls([
|
||||||
call("notifications.tasks.send-sms-to-provider.task-time", ANY),
|
call("notifications.tasks.send-sms-to-provider.task-time", ANY),
|
||||||
call("notifications.sms.total-time", ANY)
|
call("notifications.sms.total-time", ANY)
|
||||||
])
|
])
|
||||||
|
|
||||||
|
# assert that the ANYs above are at least floats
|
||||||
|
for call_arg in statsd_client.timing.call_args_list:
|
||||||
|
assert isinstance(call_arg[0][1], float)
|
||||||
|
|
||||||
|
|
||||||
def test_should_go_into_technical_error_if_exceeds_retries(
|
def test_should_go_into_technical_error_if_exceeds_retries(
|
||||||
notify_db,
|
notify_db,
|
||||||
@@ -483,11 +488,16 @@ def test_send_email_to_provider_statsd_updates(notify_db, notify_db_session, sam
|
|||||||
)
|
)
|
||||||
|
|
||||||
statsd_client.incr.assert_called_once_with("notifications.tasks.send-email-to-provider")
|
statsd_client.incr.assert_called_once_with("notifications.tasks.send-email-to-provider")
|
||||||
|
|
||||||
statsd_client.timing.assert_has_calls([
|
statsd_client.timing.assert_has_calls([
|
||||||
call("notifications.tasks.send-email-to-provider.task-time", ANY),
|
call("notifications.tasks.send-email-to-provider.task-time", ANY),
|
||||||
call("notifications.email.total-time", ANY)
|
call("notifications.email.total-time", ANY)
|
||||||
])
|
])
|
||||||
|
|
||||||
|
# assert that the ANYs above are at least floats
|
||||||
|
for call_arg in statsd_client.timing.call_args_list:
|
||||||
|
assert isinstance(call_arg[0][1], float)
|
||||||
|
|
||||||
|
|
||||||
def test_send_email_to_provider_should_not_send_to_provider_when_status_is_not_created(notify_db, notify_db_session,
|
def test_send_email_to_provider_should_not_send_to_provider_when_status_is_not_created(notify_db, notify_db_session,
|
||||||
sample_service,
|
sample_service,
|
||||||
|
|||||||
Reference in New Issue
Block a user