pub trait RuntimeObservability: Send + Sync {
// Required methods
fn metrics(&self) -> Arc<dyn MetricsCollector> ⓘ;
fn health(&self) -> Arc<dyn HealthCheckRegistry> ⓘ;
// Provided method
fn component_metrics(&self) -> ComponentMetrics { ... }
}Expand description
Narrow observability surface available to Endpoint consumers and producers.
Implemented blanket for every T: ComponentContext, so
CamelContext (the spec’s “DefaultRuntime”) and any test ctx
automatically satisfy this trait. Endpoints receive
Arc<dyn RuntimeObservability> at create_consumer / create_producer
time (per Phase A closure spec).
Send + Sync is mandatory — Endpoints spawn across tokio tasks.
Required Methods§
Sourcefn metrics(&self) -> Arc<dyn MetricsCollector> ⓘ
fn metrics(&self) -> Arc<dyn MetricsCollector> ⓘ
Active metrics collector. Used for increment_errors(route_id, label)
per ADR-0012 categories (b′) and (e).
Sourcefn health(&self) -> Arc<dyn HealthCheckRegistry> ⓘ
fn health(&self) -> Arc<dyn HealthCheckRegistry> ⓘ
Active health-check registry. Used for
force_unhealthy_for_route(route_id, name, reason) per ADR-0012
category (g).
Provided Methods§
Sourcefn component_metrics(&self) -> ComponentMetrics
fn component_metrics(&self) -> ComponentMetrics
Facade for the uniform component-operations family
(camel_component_operations_total{component,operation,outcome},
dashboard-observability Task 4.1). The lever snapshot is baked in
at facade construction: the component series flow only with the
[observability.metrics].components lever on, while failures
always reach the non-disableable error family.
Default: lever off — impls that do not override
component_metrics_enabled() (manual test runtimes AND any
context wired without a levers snapshot) keep the component
series suppressed and only forward errors. In production the
controller-path ControllerComponentContext overrides it with
the levers snapshot taken at pipeline assembly.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".