"""Config for the chartmetric_monitor SWF workflow.""" import base64 import os ENVIRONMENT = os.environ.get('Environment', 'dev') FEED_NAME = 'chartmetric_monitor' SENTRY_DSN = os.environ.get('SENTRY_DSN') DATADOG_API_KEY = os.environ.get('DATADOG_API_KEY') SF_CONFIG = { 'role': os.environ.get('SNOWFLAKE_ROLE'), 'warehouse': os.environ.get('SNOWFLAKE_WAREHOUSE'), 'db': os.environ.get('SNOWFLAKE_DATABASE'), 'schema': os.environ.get('SNOWFLAKE_SCHEMA'), 'user': os.environ.get('SNOWFLAKE_USER'), 'account': os.environ.get('SNOWFLAKE_ACCOUNT'), 'password': '', # we're using a keypair 'private_key': base64.b64decode( bytes(os.environ.get( 'SNOWFLAKE_PRIVATE_KEY_STRING', ''), encoding='utf-8')) } TABLES_TO_MONITOR = { 'AMAZON': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'AMAZON_BROWSE': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'AMAZON_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'APPLE_MUSIC_ALBUM_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'APPLE_MUSIC_DAILY_TOP_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'APPLE_MUSIC_MV_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'APPLE_MUSIC_SHAZAM_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'BANDSINTOWN_STAT': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'BEATPORT_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'CM_ALBUM': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'CM_ARTIST': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'CM_TRACK': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'CM_URL': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'DEEZER': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'DEEZER_ARTIST': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'DEEZER_ARTIST_STAT': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'DEEZER_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'FACEBOOK_STAT': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'FACEBOOK_USER': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'INSTAGRAM_STAT': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'INSTAGRAM_USER': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'ITUNES': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'ITUNES_ALBUM': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'ITUNES_ALBUM_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'ITUNES_ARTIST': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'ITUNES_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'ITUNES_MUSIC_VIDEO': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'L_CM_TRACK_CM_ALBUM': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'L_CM_TRACK_CM_ARTIST': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'L_DEEZER_ARTIST': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'L_ITUNES_ARTIST': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'QQ': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'QQ_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'SHAZAM': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'SHAZAM_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'SOUNDCLOUD_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'SOUNDCLOUD_USER_STAT': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'SPOTIFY': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'SPOTIFY_ARTIST': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'SPOTIFY_ARTIST_INSIGHTS': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'SPOTIFY_ARTIST_INSIGHTS_LOCATION': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'SPOTIFY_ARTIST_STAT': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'SPOTIFY_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'TIKTOK': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'TIKTOK_POST_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'TWITTER_STAT': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'WIKIPEDIA_STAT': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'YOUTUBE': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'YOUTUBE_ARTIST_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'YOUTUBE_CHANNEL_STAT': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'YOUTUBE_TRACK_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'}, 'YOUTUBE_VIDEO_CHART': {'db': 'CHARTMETRIC', 'schema': 'RAW_DATA'} }