Module: Stoplight::Domain::_MetricsStore
- Included in:
- Infrastructure::FailSafe::Storage::Metrics, Infrastructure::Memory::Storage::UnboundedMetrics, Infrastructure::Memory::Storage::WindowMetrics, Infrastructure::Redis::Storage::Metrics, Infrastructure::Storage::CompatibilityMetrics, Infrastructure::Storage::CompatibilityRecoveryMetrics
- Defined in:
- sig/_private/stoplight/domain/ports/metrics_store.rbs
Overview
Encapsulates metrics storage for circuit breaker execution tracking.
This abstraction isolates metrics collection and retrieval from the broader data store concerns, enabling:
- Purpose-built implementations optimized for time-series data
- Independent scaling and optimization of metrics vs. state storage
- Clearer separation between "what happened" (metrics) and "what to do" (state)
Lifecycle: A Metrics instance is scoped to a single circuit breaker configuration. Each circuit gets its own metrics store instance, allowing different circuits to use different storage strategies.
Instance Method Summary collapse
-
#clear ⇒ void
Clears all metrics for this circuit.
-
#metrics_snapshot ⇒ Domain::MetricsSnapshot
Retrieves a snapshot of current metrics for decision-making.
-
#record_failure ⇒ void
Records a failed circuit breaker execution.
-
#record_success ⇒ void
Records a successful circuit breaker execution.
Instance Method Details
#clear ⇒ void
This method returns an undefined value.
Clears all metrics for this circuit
26 |
# File 'sig/_private/stoplight/domain/ports/metrics_store.rbs', line 26
def clear: () -> void
|
#metrics_snapshot ⇒ Domain::MetricsSnapshot
Retrieves a snapshot of current metrics for decision-making.
17 |
# File 'sig/_private/stoplight/domain/ports/metrics_store.rbs', line 17
def metrics_snapshot: () -> Domain::MetricsSnapshot
|
#record_failure ⇒ void
This method returns an undefined value.
Records a failed circuit breaker execution
23 |
# File 'sig/_private/stoplight/domain/ports/metrics_store.rbs', line 23
def record_failure: (StandardError error) -> void
|
#record_success ⇒ void
This method returns an undefined value.
Records a successful circuit breaker execution
20 |
# File 'sig/_private/stoplight/domain/ports/metrics_store.rbs', line 20
def record_success: () -> void
|