"""Config.""" import os env = os.environ.get('Environment') FEED_NAME = 'label_spike_detector' ACTIVITY_TYPE_NAME = 'spike_detector' STATUS_PROCESSED = 'PROCESSED' STATUS_PROCESSED_NOTIF_SENT = 'PROCESSED_NOTIF_SENT' SWF_FLOW_NAME = ACTIVITY_TYPE_NAME SWF_FLOW_VERSION = '1.0' DEFAULT_SHIFT_DAYS = 2 DEFAULT_WINDOW_DAYS = 90 Z_SCORE_THRESHOLD = 4.5 MIN_TRACK_STREAMS = 1000 MAX_TRACKS_PER_ACCOUNT = 5000 MAX_SPIKES_PER_ACCOUNT = 10 MIN_STREAM_GAIN = 1000 # min value of (today - avg) to count a track a spike # track's release_date <= CURRENT_DATE - MIN_RELEASE_DATE_SHIFT_DAYS MIN_RELEASE_DATE_SHIFT_DAYS = 28 # number of days to look back for playlist placements PLAYLIST_PLACEMENTS_SHIFT_DAYS = 7 # maximum number of playlists to retrieve for each spike MAX_PLAYLISTS_TO_SHOW = 5 # fraction of total streams on target date playlist must have to be returned PLAYLIST_STREAMS_THRESHOLD = 0.1 STORES = { 286: 'spotify', 1: 'apple music', 1202: 'tiktok' } # spike detection in fact_analytics streams and for tiktok creations TYPES = ['streams', 'tiktok'] TEMP_TABLE_NAME = 'TEMP_ACTIVITY_SPIKE_HISTORY_{type}'