import os import uuid from logging import INFO from owslogger import logger from dotenv import load_dotenv load_dotenv('.env') # Envirnoment PROD_ENVIRONMENT = 'prod' DEV_ENVIRONMENT = 'dev' QA_ENVIRONMENT = 'qa' TEST_ENVIRONMENT = 'test' ENVIRONMENT = os.environ.get('ENVIRONMENT', 'DEV') # Application Vars # APPLICATION_NAME = 'rename-artist' SCRIPT_NAME = 'rename-artist' LOGGING_LEVEL = INFO # GraphQL GRAPHQL_GATEWAY_URL = os.environ.get('GRAPHQL_GATEWAY_URL') OA_USER = os.environ.get('OA_USER', 'oa:179') ORCHARD_IDENTITY_ID = os.environ.get('ORCHARD_IDENTITY_ID', None) ORCHARD_PROFILE_ID = os.environ.get('ORCHARD_PROFILE_ID', None) ORCHARD_PROFILE_TYPE = os.environ.get('ORCHARD_PROFILE_TYPE', None) ORCHARD_ROLES = os.environ.get('ORCHARD_ROLES', None) # Logging -------------------------------------------------------------------- LOGGER_DSN = os.environ.get('LOGGER_DSN') or None LOGGER_NAME = 'rename-artist-logger' LOGGER_LEVEL = os.environ.get('LOGGER_LEVEL', 'INFO') app_logger = logger.setup( ENVIRONMENT, APPLICATION_NAME, LOGGING_LEVEL, SCRIPT_NAME, '1.0.0', None, True, LOGGER_DSN ) # logger def get_current_logger(correlation_id=None): """Get logger with a correlation_id attached. Args: correlation_id: correlation_id that will be sent along with log record Returns: logger.OwsLoggingAdapter: instance of OwsLoggingAdapter with correlation_id attached. """ return logger.OwsLoggingAdapter( app_logger, {'correlation_id': correlation_id or uuid.uuid4()})