Exception: BugBunny::Error
- Inherits:
-
StandardError
- Object
- StandardError
- BugBunny::Error
- Defined in:
- lib/bug_bunny/exception.rb
Overview
Clase base para todas las excepciones lanzadas por la gema BugBunny. Permite capturar cualquier error de la librería con un ‘rescue BugBunny::Error`.
Para los errores derivados de una respuesta RPC (los que levanta Middleware::RaiseError), expone de forma uniforme la **materia prima** del error: el ‘status` y el `raw_response` (cuerpo crudo). La gema es **agnóstica al payload**: no interpreta la estructura del cuerpo de error: es el boundary de cada servicio quien lee `raw_response` y decide la semántica de dominio (códigos, detalles de validación, etc.).
Direct Known Subclasses
ClientError, CommunicationError, ConfigurationError, PublishNacked, PublishUnroutable, SecurityError, ServerError
Instance Attribute Summary collapse
-
#raw_response ⇒ Hash, ...
El cuerpo crudo de la respuesta de error, tal como llegó por el wire.
-
#status ⇒ Integer?
El código de estado de la respuesta que originó el error (ej: 400, 404, 409, 422, 500).
Instance Attribute Details
#raw_response ⇒ Hash, ...
**No loguear ni enviar a sinks (Sentry/logs) sin sanitizar.** El cuerpo crudo puede contener datos sensibles (p. ej. en ‘details`). Antes de cualquier sink, filtrar las claves sensibles del fleet (`password|pass|passwd|secret|token|api_key|auth`) → `[FILTERED]`. La gema entrega el cuerpo crudo a propósito; sanitizarlo es responsabilidad del consumidor.
Returns El cuerpo crudo de la respuesta de error, tal como llegó por el wire. ‘nil` para errores que no provienen de una respuesta RPC (ej: CommunicationError, ConfigurationError).
31 32 33 |
# File 'lib/bug_bunny/exception.rb', line 31 def raw_response @raw_response end |
#status ⇒ Integer?
Returns El código de estado de la respuesta que originó el error (ej: 400, 404, 409, 422, 500). ‘nil` para errores que no provienen de una respuesta RPC.
36 37 38 |
# File 'lib/bug_bunny/exception.rb', line 36 def status @status end |