import os AUTH_API_KEY = os.environ["AUTH_API_KEY"] APP = os.environ.get("APP", "gate-api") SERVICE_ENV = os.environ.get("SERVICE_ENV", "local") DISABLE_DUMP_SCHEMA = bool(os.environ.get("DISABLE_DUMP_SCHEMA", "")) DEBUG = bool(os.environ.get("DEBUG", False)) MAX_LINE_SIZE = int(os.environ.get("MAX_LINE_SIZE", 81900)) MAX_FIELD_SIZE = int(os.environ.get("MAX_LINE_SIZE", 81900)) MAX_BODY_SIZE = int(os.environ.get("MAX_BODY_SIZE", 1024 * 1024 * 100)) EXCLUDED_HEADERS = ("cookie", "authorization", "host", "content-type", "content-length") # lowercase only DEFAULT_REQUEST_TIMEOUT = int(os.environ.get("DEFAULT_REQUEST_TIMEOUT", 300)) # 5*60 DEFAULT_RETRY_COUNT = int(os.environ.get("DEFAULT_RETRY_COUNT", 2)) DEFAULT_RETRY_WAIT = int(os.environ.get("DEFAULT_RETRY_WAIT", 1)) SENTRY_DSN = os.environ.get("SENTRY_DSN") DATADOG_SERVICE_NAME = os.environ.get("DATADOG_SERVICE_NAME") CACHE_REDIS_HOST = os.environ["REDIS_HOST"] CACHE_REDIS_PORT = os.environ.get("REDIS_PORT", "6379") CACHE_DEFAULT_TIMEOUT = int(os.environ.get("CACHE_DEFAULT_TIMEOUT", 5)) # seconds CACHE_MAX_CONNECTION_POOL_SIZE = int(os.environ.get("REDIS_MAX_CONNECTION_POOL_SIZE", 300)) CACHE_NAMESPACE = f"{APP}_{SERVICE_ENV}" CACHE_CONFIG = { "host": CACHE_REDIS_HOST, "port": CACHE_REDIS_PORT, "socket_timeout": CACHE_DEFAULT_TIMEOUT, "max_connections": CACHE_MAX_CONNECTION_POOL_SIZE, } DSP_AUTH = os.environ["DSPAPI_APPKEY"] DSPAPI_HOSTNAME = os.environ["DSPAPI_HOSTNAME"] DSPAPI_SCHEMA = os.environ.get("DSPAPI_SCHEMA", "https") DSP_URI = f"{DSPAPI_SCHEMA}://{DSPAPI_HOSTNAME}" APOLLOAPI_AUTH = os.environ["APOLLOAPI_APPKEY"] APOLLOAPI_HOSTNAME = os.environ["APOLLOAPI_HOSTNAME"] APOLLOAPI_SCHEMA = os.environ.get("APOLLOAPI_SCHEMA", "https") APOLLO_URI = f"{APOLLOAPI_SCHEMA}://{APOLLOAPI_HOSTNAME}" VENDORAPI_AUTH = os.environ["VENDORAPI_APPKEY"] VENDORAPI_HOSTNAME = os.environ["VENDORAPI_HOSTNAME"] VENDORAPI_SCHEMA = os.environ.get("VENDORAPI_SCHEMA", "https") VENDOR_URI = f"{VENDORAPI_SCHEMA}://{VENDORAPI_HOSTNAME}" VENDOR_DEFAULT_DATA_TTL = os.environ.get("VENDORAPI_DEFAULT_DATA_TTL", str(60 * 60 * 6)) VENDOR_STATIONS_DATA_TTL = os.environ.get("VENDOR_STATIONS_DATA_TTL", str(60 * 60 * 12)) VENDOR_IS_SONY_DATA_TTL = os.environ.get("VENDOR_IS_SONY_DATA_TTL", str(60 * 60 * 12)) CONCURRENCY_LEVEL = int(os.environ.get("CONCURRENCY_LEVEL", 10)) CHARTS_CONCURRENCY_LEVEL = int(os.environ.get("CHARTS_CONCURRENCY_LEVEL", 20)) FILTR_AUTH = os.environ["ADMINAPI_APPKEY"] FILTRAPI_HOSTNAME = os.environ["ADMINAPI_HOSTNAME"] FILTRAPI_SCHEMA = os.environ.get("ADMINAPI_SCHEMA", "https") FILTR_URI = f"{FILTRAPI_SCHEMA}://{FILTRAPI_HOSTNAME}" CHARTS_YOUTUBE_MARKETS_TTL = int(os.environ.get("CHARTS_YOUTUBE_MARKETS_TTL", 0)) GET_PLAYLISTS_BY_TRACK_SCENARIO_DATA_TTL = int(os.environ.get("GET_PLAYLISTS_BY_TRACK_SCENARIO_DATA_TTL", 900)) GET_PLAYLISTS_BY_TRACK_DATA_TTL = int(os.environ.get("GET_PLAYLISTS_BY_TRACK_DATA_TTL", 900)) USERDATAAPI_APPKEY = os.environ["USERDATAAPI_APPKEY"] USERDATAAPI_HOSTNAME = os.environ["USERDATAAPI_HOSTNAME"] USERDATAAPI_SCHEMA = os.environ.get("USERDATAAPI_SCHEMA", "https") USER_DATA_URI = f"{USERDATAAPI_SCHEMA}://{USERDATAAPI_HOSTNAME}" DEFAULT_PAGINATION_TLL = int(os.environ.get("DEFAULT_PAGINATION_TLL", 3 * 60)) CHARTS_CACHE_TLL = int(os.environ.get("DEFAULT_PAGINATION_TLL", 15 * 60)) CHARTS_TRACKS_SUMMARY_CACHE_TLL = int(os.environ.get("CHARTS_TRACKS_SUMMARY_CACHE_TLL", 15 * 60)) API_PREFIX = os.environ.get("API_PREFIX", "/api") REAL_API_PREFIX = os.environ.get("REAL_API_PREFIX", "/gate-api") ALLOW_CACHE_MODES = bool(os.environ.get("ALLOW_CACHE_MODES", "")) ORIGINAL_STATUS_CODES_TO_BYPASS = os.environ.get("ORIGINAL_STATUS_CODES_TO_BYPASS", "404").split(",") SENTRY_IGNORE_STATUS_CODES = os.environ.get("SENTRY_IGNORE_STATUS_CODES", "400,401,404").split(",") ELASTICSEARCH_URL = os.environ.get("ELASTICSEARCH_URL") ELASTICSEARCH_PLAYLISTS_INDEX = os.environ.get("ELASTICSEARCH_PLAYLISTS_INDEX", "sony_filtr_admin_search") AWS_DEFAULT_REGION = os.environ.get("AWS_DEFAULT_REGION", "us-east-1") USERS_VISITS_MESSAGE_QUEUE_URL = os.environ.get("USERS_VISITS_MESSAGE_QUEUE_URL", "") DD_TRACE_HEADERS = os.environ.get("DD_TRACE_HEADERS", "client-type,x-app-slug,x-type,x-version,x-data-timeout").split( "," ) ARTIST_GRAS_ID_TLL = int(os.environ.get("ARTIST_GRAS_ID_TLL", 15 * 60)) DELPHI_CURRENT_PLAYLISTS_BY_TRACK_TTL = int(os.environ.get("DELPHI_PLAYLISTS_BY_TRACK_TTL", 15 * 60)) CORE_IMAGE_SERVICE_HOSTNAME = os.environ.get("CORE_IMAGE_SERVICE_URL", "images-api.atlas.stream/v2/") CORE_IMAGE_SERVICE_SCHEMA = os.environ.get("CORE_IMAGE_SERVICE_SCHEMA", "https") CORE_IMAGE_SERVICE = f"{CORE_IMAGE_SERVICE_SCHEMA}://{CORE_IMAGE_SERVICE_HOSTNAME}" AMAZON_PLAYLIST_ID_COUNTRY_CODES_TTL = int(os.environ.get("AMAZON_PLAYLIST_ID_COUNTRY_CODES_TTL", 60 * 60)) AMAZON_PLAYLIST_WORLDWIDE_STREAMS_GRAPH_TTL = int( os.environ.get("AMAZON_PLAYLIST_WORLDWIDE_STREAMS_GRAPH_TTL", 30 * 60) )