Spaces:
Paused
Paused
File size: 8,333 Bytes
5a81b95 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 | # Sentry Integration
**Purpose**: Real-time error tracking and production monitoring
**Status**: π’ **β
Fully Operational** (NO ISSUES)
**Version**: 1.0.0+
**Maintainer**: Infrastructure Team
## What It Does
Sentry provides:
- Real-time error capture and alerts
- Stack trace analysis and grouping
- User session tracking and replay
- Performance monitoring
- Release tracking and deployment tracking
- Custom event logging
- Alert routing and notifications
## Status: PRODUCTION READY β
**No known issues. Works perfectly.**
All error-finding libraries have workarounds documented, but **Sentry needs nothing - it just works**.
## Integration Status
**Location**: `app/integrations/sentry/`
**Status**: β
Already integrated into cascade orchestrator
Sentry is:
- β
Automatically capturing all errors
- β
Logging to `.claude/logs/sentry.log`
- β
Sending real-time alerts
- β
Tracking deployments
- β
Monitoring performance
**No configuration needed** - it's already active and working.
## Quick Access
### View Live Errors
```bash
# Recent errors logged locally
tail -f .claude/logs/sentry.log
# Or check Sentry dashboard:
# https://sentry.io/[your-org]/[your-project]/issues/
```
### Manual Event Logging
```python
import sentry_sdk
from sentry_sdk import capture_event
# Capture custom event
capture_event({
"message": "Widget discovered",
"level": "info",
"tags": {
"widget_type": "email",
"discovery_source": "hugging_face"
}
})
# Capture exception
try:
result = process_widget(data)
except Exception as e:
sentry_sdk.capture_exception(e)
```
### Set User Context
```python
import sentry_sdk
sentry_sdk.set_user({
"id": "block_2_cloud_arch",
"username": "agent_block_2",
"email": "block2@widgettdc.local"
})
```
## Dashboard
Access real-time metrics:
- **Error count**: Total errors in system
- **Error rate**: Errors per minute
- **User impact**: How many sessions affected
- **Performance**: Request latency percentiles
- **Releases**: Code deployments and their error rates
## Features You Get
### Feature 1: Error Grouping
Errors are automatically grouped by type and location
```
Similar errors grouped together:
- "Timeout in widget discovery" (245 occurrences)
- "Invalid JSON in config" (98 occurrences)
- "Database connection pool exhausted" (12 occurrences)
```
### Feature 2: Stack Traces
Full stack traces with source code context
```
Traceback:
File "src/services/widget_discovery.py", line 45, in discover_widgets
result = call_hugging_face_api(query)
File "src/integrations/hf_api.py", line 23, in call_hugging_face_api
response = requests.get(url, timeout=30)
File "requests/__init__.py", line 61, in get
return request('get', url, params=params, **kwargs)
Error: requests.exceptions.Timeout: Connection timeout after 30s
```
### Feature 3: Release Tracking
Track which code changes caused issues
```
Release v1.0.0-alpha.5 deployed at 14:32
- 2 new errors introduced
- 1 error fixed (was appearing in v1.0.0-alpha.4)
- Overall health: Improving (3% fewer errors)
```
### Feature 4: User Sessions
Track user journeys leading to errors
```
Session for: Block 5 QASpecialist Agent
Duration: 23 minutes
Actions:
1. Started widget discovery (14:15)
2. Scanned 5 Git repos (14:16-14:18)
3. ERROR: Timeout in repo 4 (14:19)
4. Retry discovered widgets (14:20)
5. Conversion started (14:21)
```
### Feature 5: Performance Monitoring
Track response times and bottlenecks
```
Endpoint Performance:
- POST /api/widgets/discover: 2.3s avg (p95: 8.2s)
- POST /api/widgets/convert: 15.2s avg (p95: 45.3s)
- GET /api/widgets/status: 0.1s avg (p95: 0.3s)
Slow transactions:
- Widget conversion pipeline (47% of time in ML inference)
- Database queries (23% of time in index scans)
```
## Usage by Block
### Block 1 - Frontend (UI/UX)
Sentry automatically captures:
- Browser JavaScript errors
- Frontend performance metrics
- User interaction tracking
**Benefit**: See exactly what users experience
### Block 2 - CloudArch (MCP Framework)
Sentry automatically captures:
- MCP service errors
- Message passing failures
- Widget-to-widget communication issues
**Benefit**: Real-time visibility into widget triggering failures
### Block 3 - Security (Error Handling)
Sentry helps validate error handling:
- Confirms all errors are caught
- Tracks unhandled exceptions
- Monitors security-related errors
**Benefit**: Verify error handling effectiveness
### Block 4 - Database (Registry)
Sentry automatically captures:
- Database connection errors
- Transaction failures
- State synchronization issues
**Benefit**: Early warning of data integrity problems
### Block 5 - QA (Widget Discovery)
Sentry automatically captures:
- Discovery pipeline failures
- API integration errors
- Conversion process issues
**Benefit**: Track discovery success rate in real-time
### Block 6 - Security & Compliance
Sentry automatically captures:
- Security validation failures
- Permission denial events
- Compliance audit triggers
**Benefit**: Complete audit trail of security events
## Daily Standup Integration
**How to use Sentry in your daily report**:
```markdown
## Block X - Daily Standup
**Sentry Status**:
- β
0 critical errors in last 24 hours
- π‘ 3 high-priority errors (need investigation)
- π Widget discovery success rate: 94.2%
- β‘ Average response time: 2.3s
**Error Highlights**:
- Fixed: Timeout in repo scanning (was #1 issue)
- New: JSON parsing error in 2 discovered widgets (investigating)
- Monitoring: MCP state sync (previously unstable, now stable)
```
## Troubleshooting
**Q: How do I know errors are being captured?**
```bash
# Check log file
tail -20 .claude/logs/sentry.log
# Should show recent events
```
**Q: How do I send a custom event?**
```python
import sentry_sdk
sentry_sdk.capture_message(
"Widget discovery completed: 45 widgets found",
level="info"
)
```
**Q: How do I track specific metrics?**
```python
import sentry_sdk
# Add breadcrumb (event in user's journey)
sentry_sdk.add_breadcrumb({
"category": "widget_discovery",
"message": "Found 3 new widgets",
"level": "info"
})
# Later, if error occurs, breadcrumbs will be visible
```
**Q: How do I correlate errors with my code changes?**
```bash
# Set release in deployment
export SENTRY_RELEASE="v1.0.0-alpha.5"
python run.py real -c
# Then errors show which release they occurred in
```
## Integration Points
### With Cascade Orchestrator
Sentry automatically tracks:
- Each cascade iteration start/end
- Agent block execution success/failure
- Token usage and costs
- Performance metrics
### With Error Libraries
Sentry receives findings from:
- pytest-error-handler (test failures)
- Hugging Face detector (security issues)
- mypy-strict-mode (type errors)
- Each logged as custom event
### With Daily Standups
Sentry data appears in:
- Block status (error count, trends)
- Performance metrics (response times)
- User impact (how many sessions affected)
- Recommendations (which errors to fix first)
## Success Indicators
**Good Sentry usage**:
- β
Error count trending downward over time
- β
New errors caught within 1 minute of occurrence
- β
Stack traces clearly show cause
- β
User sessions explain error context
- β
Performance metrics stable or improving
**Underutilized Sentry**:
- β Errors logged but not acted upon
- β High error volume not decreasing
- β No correlation between releases and error spikes
- β Performance metrics not monitored
## Next Steps
1. **Check dashboard**: View recent errors at Sentry dashboard
2. **Review findings**: Understand error patterns
3. **Report in standup**: Include Sentry metrics in daily report
4. **Act on findings**: Fix top errors in priority order
5. **Monitor improvement**: Track error reduction over time
## Questions?
Sentry is production-ready and working perfectly. If you have questions:
1. Check Sentry dashboard for your org
2. Review the integration code at `app/integrations/sentry/`
3. File questions in daily standup (Sentry is **not** the blocker - others are)
---
**Remember**: Sentry is the ONLY error library with NO issues. The others (pytest, Hugging Face, mypy) all have documented workarounds, but Sentry just works.
Real-time error tracking enabled. β
|