notify-api-412 use black to enforce python style standards

This commit is contained in:
Kenneth Kehl
2023-08-23 10:35:43 -07:00
parent a7898118d7
commit 026dc14021
586 changed files with 33990 additions and 23461 deletions

View File

@@ -58,34 +58,46 @@ def cleanup_unfinished_jobs():
@notify_celery.task(name="delete-notifications-older-than-retention")
def delete_notifications_older_than_retention():
delete_email_notifications_older_than_retention.apply_async(queue=QueueNames.REPORTING)
delete_sms_notifications_older_than_retention.apply_async(queue=QueueNames.REPORTING)
delete_email_notifications_older_than_retention.apply_async(
queue=QueueNames.REPORTING
)
delete_sms_notifications_older_than_retention.apply_async(
queue=QueueNames.REPORTING
)
@notify_celery.task(name="delete-sms-notifications")
@cronitor("delete-sms-notifications")
def delete_sms_notifications_older_than_retention():
_delete_notifications_older_than_retention_by_type('sms')
_delete_notifications_older_than_retention_by_type("sms")
@notify_celery.task(name="delete-email-notifications")
@cronitor("delete-email-notifications")
def delete_email_notifications_older_than_retention():
_delete_notifications_older_than_retention_by_type('email')
_delete_notifications_older_than_retention_by_type("email")
def _delete_notifications_older_than_retention_by_type(notification_type):
flexible_data_retention = fetch_service_data_retention_for_all_services_by_notification_type(notification_type)
flexible_data_retention = (
fetch_service_data_retention_for_all_services_by_notification_type(
notification_type
)
)
for f in flexible_data_retention:
day_to_delete_backwards_from = get_midnight_in_utc(datetime.utcnow()).date() \
- timedelta(days=f.days_of_retention)
day_to_delete_backwards_from = get_midnight_in_utc(
datetime.utcnow()
).date() - timedelta(days=f.days_of_retention)
delete_notifications_for_service_and_type.apply_async(queue=QueueNames.REPORTING, kwargs={
'service_id': f.service_id,
'notification_type': notification_type,
'datetime_to_delete_before': day_to_delete_backwards_from
})
delete_notifications_for_service_and_type.apply_async(
queue=QueueNames.REPORTING,
kwargs={
"service_id": f.service_id,
"notification_type": notification_type,
"datetime_to_delete_before": day_to_delete_backwards_from,
},
)
seven_days_ago = get_midnight_in_utc(datetime.utcnow()).date() - timedelta(days=7)
@@ -93,29 +105,36 @@ def _delete_notifications_older_than_retention_by_type(notification_type):
# get a list of all service ids that we'll need to delete for. Typically that might only be 5% of services.
# This query takes a couple of mins to run.
service_ids_that_have_sent_notifications_recently = get_service_ids_with_notifications_before(
notification_type,
seven_days_ago
service_ids_that_have_sent_notifications_recently = (
get_service_ids_with_notifications_before(notification_type, seven_days_ago)
)
service_ids_to_purge = service_ids_that_have_sent_notifications_recently - service_ids_with_data_retention
service_ids_to_purge = (
service_ids_that_have_sent_notifications_recently
- service_ids_with_data_retention
)
for service_id in service_ids_to_purge:
delete_notifications_for_service_and_type.apply_async(queue=QueueNames.REPORTING, kwargs={
'service_id': service_id,
'notification_type': notification_type,
'datetime_to_delete_before': seven_days_ago
})
delete_notifications_for_service_and_type.apply_async(
queue=QueueNames.REPORTING,
kwargs={
"service_id": service_id,
"notification_type": notification_type,
"datetime_to_delete_before": seven_days_ago,
},
)
current_app.logger.info(
f'delete-notifications-older-than-retention: triggered subtasks for notification_type {notification_type}: '
f'{len(service_ids_with_data_retention)} services with flexible data retention, '
f'{len(service_ids_to_purge)} services without flexible data retention'
f"delete-notifications-older-than-retention: triggered subtasks for notification_type {notification_type}: "
f"{len(service_ids_with_data_retention)} services with flexible data retention, "
f"{len(service_ids_to_purge)} services without flexible data retention"
)
@notify_celery.task(name='delete-notifications-for-service-and-type')
def delete_notifications_for_service_and_type(service_id, notification_type, datetime_to_delete_before):
@notify_celery.task(name="delete-notifications-for-service-and-type")
def delete_notifications_for_service_and_type(
service_id, notification_type, datetime_to_delete_before
):
start = datetime.utcnow()
num_deleted = move_notifications_to_notification_history(
notification_type,
@@ -125,21 +144,21 @@ def delete_notifications_for_service_and_type(service_id, notification_type, dat
if num_deleted:
end = datetime.utcnow()
current_app.logger.info(
f'delete-notifications-for-service-and-type: '
f'service: {service_id}, '
f'notification_type: {notification_type}, '
f'count deleted: {num_deleted}, '
f'duration: {(end - start).seconds} seconds'
f"delete-notifications-for-service-and-type: "
f"service: {service_id}, "
f"notification_type: {notification_type}, "
f"count deleted: {num_deleted}, "
f"duration: {(end - start).seconds} seconds"
)
@notify_celery.task(name='timeout-sending-notifications')
@cronitor('timeout-sending-notifications')
@notify_celery.task(name="timeout-sending-notifications")
@cronitor("timeout-sending-notifications")
def timeout_notifications():
notifications = ['dummy value so len() > 0']
notifications = ["dummy value so len() > 0"]
cutoff_time = datetime.utcnow() - timedelta(
seconds=current_app.config.get('SENDING_NOTIFICATIONS_TIMEOUT_PERIOD')
seconds=current_app.config.get("SENDING_NOTIFICATIONS_TIMEOUT_PERIOD")
)
while len(notifications) > 0:
@@ -149,7 +168,10 @@ def timeout_notifications():
check_and_queue_callback_task(notification)
current_app.logger.info(
"Timeout period reached for {} notifications, status has been updated.".format(len(notifications)))
"Timeout period reached for {} notifications, status has been updated.".format(
len(notifications)
)
)
@notify_celery.task(name="delete-inbound-sms")
@@ -160,9 +182,7 @@ def delete_inbound_sms():
deleted = delete_inbound_sms_older_than_retention()
current_app.logger.info(
"Delete inbound sms job started {} finished {} deleted {} inbound sms notifications".format(
start,
datetime.utcnow(),
deleted
start, datetime.utcnow(), deleted
)
)
except SQLAlchemyError:
@@ -170,10 +190,9 @@ def delete_inbound_sms():
raise
@notify_celery.task(name='save-daily-notification-processing-time')
@notify_celery.task(name="save-daily-notification-processing-time")
@cronitor("save-daily-notification-processing-time")
def save_daily_notification_processing_time(local_date=None):
# local_date is a string in the format of "YYYY-MM-DD"
if local_date is None:
# if a date is not provided, we run against yesterdays data
@@ -188,6 +207,6 @@ def save_daily_notification_processing_time(local_date=None):
FactProcessingTime(
local_date=local_date,
messages_total=result.messages_total,
messages_within_10_secs=result.messages_within_10_secs
messages_within_10_secs=result.messages_within_10_secs,
)
)