Sentry error tracking and performance monitoring configuration. Sentry provides real-time error tracking, performance monitoring, and release health tracking for production deployments.
| 1044 | |
| 1045 | |
| 1046 | class SentrySettings(BaseSettings): |
| 1047 | """Sentry error tracking and performance monitoring configuration. |
| 1048 | |
| 1049 | Sentry provides real-time error tracking, performance monitoring, |
| 1050 | and release health tracking for production deployments. |
| 1051 | """ |
| 1052 | |
| 1053 | # Enable/disable Sentry |
| 1054 | enabled: bool = False |
| 1055 | |
| 1056 | # Sentry DSN (Data Source Name) |
| 1057 | # Get this from your Sentry project settings |
| 1058 | dsn: str = "" |
| 1059 | |
| 1060 | # Environment name (e.g., production, staging, development) |
| 1061 | environment: str = Field( |
| 1062 | default="development", |
| 1063 | validation_alias=AliasChoices("SENTRY__ENVIRONMENT", "ENVIRONMENT"), |
| 1064 | ) |
| 1065 | |
| 1066 | # Release version (for tracking deployments) |
| 1067 | # Defaults to project version if not specified |
| 1068 | release: str = "" |
| 1069 | |
| 1070 | # Sample rate for error events (0.0 to 1.0) |
| 1071 | # 1.0 = capture all errors |
| 1072 | traces_sample_rate: float = 1.0 |
| 1073 | |
| 1074 | # Sample rate for performance monitoring (0.0 to 1.0) |
| 1075 | # 0.1 = capture 10% of transactions for performance monitoring |
| 1076 | profiles_sample_rate: float = 0.1 |
| 1077 | |
| 1078 | # Enable performance monitoring |
| 1079 | enable_tracing: bool = True |
| 1080 | |
| 1081 | # Enable profiling |
| 1082 | enable_profiling: bool = False |
| 1083 | |
| 1084 | # Send default PII (Personally Identifiable Information) |
| 1085 | # Set to False in production for privacy compliance |
| 1086 | send_default_pii: bool = False |
| 1087 | |
| 1088 | # Maximum breadcrumbs to capture |
| 1089 | max_breadcrumbs: int = 100 |
| 1090 | |
| 1091 | # Attach stack trace to messages |
| 1092 | attach_stacktrace: bool = True |
| 1093 | |
| 1094 | integrations: list[str] = [ |
| 1095 | "starlette", # Covers all HTTP endpoints in bindu/server/endpoints/ |
| 1096 | "sqlalchemy", # PostgreSQL storage integration |
| 1097 | "redis", # Redis scheduler integration |
| 1098 | "asyncio", # Async task integration |
| 1099 | ] |
| 1100 | |
| 1101 | # Tags to add to all events |
| 1102 | # Useful for filtering and grouping in Sentry UI |
| 1103 | default_tags: dict[str, str] = {} |