"""Sentry Client. ================= Provides sentry_client attribute for ad hoc capturing of messages and errors. https://docs.getsentry.com/hosted/clients/python/usage/ """ import sentry_sdk from sentry_sdk.integrations.sqlalchemy import SqlalchemyIntegration from salessheets import config sentry_client = None sentry_capture_exception = None sentry_capture_message = None if config.SENTRY_DSN: sentry_sdk.init( dsn=config.SENTRY_DSN, environment=config.ENVIRONMENT, debug=False, integrations=[ # https://docs.sentry.io/platforms/python/sqlalchemy/ SqlalchemyIntegration() ] ) sentry_client = sentry_sdk.client sentry_capture_exception = sentry_sdk.capture_exception sentry_capture_message = sentry_sdk.capture_message elif config.ENVIRONMENT in [config.ENVIRONMENT_DEV]: sentry_sdk.init( environment=config.ENVIRONMENT, debug=True, integrations=[ # https://docs.sentry.io/platforms/python/sqlalchemy/ SqlalchemyIntegration() ] ) sentry_client = sentry_sdk.client sentry_capture_exception = sentry_sdk.capture_exception sentry_capture_message = sentry_sdk.capture_message