import logging import os from sqlalchemy.pool import StaticPool, NullPool TEST_ENVIRONMENT = 'test' DEV_ENVIRONMENT = 'dev' PROD_ENVIRONMENT = 'prod' QA_ENVIRONMENT = 'qa' environment = os.environ.get('Environment', DEV_ENVIRONMENT) # Database config LogETL_DB_URL = os.environ.get('LogETL_DB_URL') # Sentry # SENTRY_DSN = os.environ.get('SENTRY_DSN') # Python log levels are NOTSET(0), DEBUG (10), INFO (20), # WARNING (30), ERROR (40), CRITICAL (50) if environment in (TEST_ENVIRONMENT, DEV_ENVIRONMENT): default_log_level = logging.DEBUG elif environment in (QA_ENVIRONMENT, PROD_ENVIRONMENT): default_log_level = logging.INFO else: default_log_level = logging.INFO LOG_LEVEL = int(os.environ.get('LOG_LEVEL', default_log_level)) if environment == TEST_ENVIRONMENT: DB_ENGINE_SETTINGS = { 'connect_args': { 'check_same_thread': False}, 'poolclass': StaticPool} AR_DB_URL = 'sqlite://' else: DB_ENGINE_SETTINGS = {'poolclass': NullPool} assert LogETL_DB_URL, 'LogETL_DB_URL is missing from the environment' FEED_INGESTION_TABLE = 'prod_feed_ingestion_status' FEED_SENDER_TABLE = 'prod_feed_sender_status'