Send results of processing-time query to performance platform

This commit is contained in:
Katie Smith
2017-08-30 14:36:16 +01:00
parent 132d65bc75
commit a1a5fdedb1
4 changed files with 111 additions and 22 deletions

View File

@@ -0,0 +1,36 @@
from datetime import datetime
from flask import current_app
from app.utils import get_midnight_for_day_before, get_london_midnight_in_utc
from app.dao.notifications_dao import dao_get_total_notifications_sent_per_day_for_perfomance_platform
from app import performance_platform_client
def send_processing_time_to_performance_platform():
today = datetime.utcnow()
start_date = get_midnight_for_day_before(today)
end_date = get_london_midnight_in_utc(today)
result = dao_get_total_notifications_sent_per_day_for_perfomance_platform(start_date, end_date)
current_app.logger.info(
'Sending processing-time to performance platform for date {}. Total: {}, under 10 secs {}'.format(
start_date, result.messages_total, result.messages_within_10_secs
)
)
send_processing_time_data(start_date, 'messages-total', result.messages_total)
send_processing_time_data(start_date, 'messages-within-10-secs', result.messages_within_10_secs)
def send_processing_time_data(date, status, count):
payload = performance_platform_client.format_payload(
dataset='processing-time',
date=date,
group_name='status',
group_value=status,
count=count
)
performance_platform_client.send_stats_to_performance_platform(payload)