mirror of
https://github.com/GSA/notifications-api.git
synced 2026-09-07 06:18:26 -04:00
Log the ratio of slow notifications
This commit is contained in:
@@ -258,7 +258,7 @@ def switch_current_sms_provider_on_slow_delivery():
|
|||||||
"""
|
"""
|
||||||
current_provider = get_current_provider('sms')
|
current_provider = get_current_provider('sms')
|
||||||
if current_provider.updated_at > datetime.utcnow() - timedelta(minutes=10):
|
if current_provider.updated_at > datetime.utcnow() - timedelta(minutes=10):
|
||||||
current_app.logger.info("Slow delivery provider switched less than 10 minutes ago.")
|
current_app.logger.info("Slow delivery notifications provider switched less than 10 minutes ago.")
|
||||||
return
|
return
|
||||||
slow_delivery_notifications = is_delivery_slow_for_provider(
|
slow_delivery_notifications = is_delivery_slow_for_provider(
|
||||||
provider=current_provider.identifier,
|
provider=current_provider.identifier,
|
||||||
|
|||||||
@@ -467,8 +467,13 @@ def is_delivery_slow_for_provider(
|
|||||||
|
|
||||||
counts = {c[0]: c[1] for c in count}
|
counts = {c[0]: c[1] for c in count}
|
||||||
total_notifications = sum(counts.values())
|
total_notifications = sum(counts.values())
|
||||||
|
slow_notifications = counts.get(True, 0)
|
||||||
|
|
||||||
if total_notifications:
|
if total_notifications:
|
||||||
return counts.get(True, 0) / total_notifications >= threshold
|
current_app.logger.info("Slow delivery notifications count: {} out of {}. Ratio {}".format(
|
||||||
|
slow_notifications, total_notifications, slow_notifications / total_notifications
|
||||||
|
))
|
||||||
|
return slow_notifications / total_notifications >= threshold
|
||||||
else:
|
else:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user