Agent-Hellboy / Agent-Hellboy/gunicorn-prometheus-exporter
Implement fail-fast exception handling for configuration validation and critical setup
- 主要語言
- Python
- 星號
- 18
- 分支
- 1
- PR 合併指標
- 30 天內沒有已合併 PR
描述
## Problem
Configuration errors are currently consumed gracefully when they should fail fast to prevent runtime issues.
## Changes Needed
### High Priority
1. **Add validation to config properties**:
- `redis_port`: Validate range 1-65535
- `redis_db`: Validate >= 0
- `redis_ttl_seconds`: Validate >= 0
2. **Fix config.validate() method**:
- Re-raise `ValueError`/`KeyError` instead of returning `False`
- Only consume unexpected errors
### Medium Priority
3. **Redis connection setup**: Differentiate critical (connection/auth) vs optional errors
4. **Server startup**: Fail fast for permissions/file access, graceful for non-critical
### Keep Graceful (No Changes)
- Signal handlers, metrics updates, cleanup operations
## Strategy
**Fail Fast**: Configuration, critical connections, required resources
**Degrade Gracefully**: Runtime operations, optional features, cleanup
Related to PR #82 configuration validation improvements.
貢獻指南
評估
這個 Issue 還沒有評估資料。