Skip to navigation

Trait Observability Host

View as Markdown

Generated from cargo doc --no-deps -p nemo-relay-builtins -p nemo-relay-diagnostics -p nemo-relay-logging -p nemo-relay-plugin-host -p nemo-relay-codecs -p nemo-relay -p nemo-relay-runtime -p nemo-relay-model-pricing -p nemo-relay-resource-metrics -p nemo-relay-observability -p nemo-relay-adaptive -p nemo-relay-pii-redaction -p nemo-relay-ffi -p nemo-relay-types -p nemo-relay-plugin -p nemo-relay-worker-proto -p nemo-relay-worker.

pub trait ObservabilityHost: LlmNormalizer {
    // Required methods
    fn pricing_snapshot(&self) -> Arc<dyn CostEstimator>;
    fn register_subscriber(
        &self,
        name: &str,
        callback: EventSubscriberFn,
    ) -> Result<()>;
    fn deregister_subscriber(&self, name: &str) -> Result<bool>;
    fn flush_subscribers(&self) -> Result<()>;
    fn w3c_span_context(
        &self,
        traceparent: Option<&str>,
        tracestate: Option<&str>,
    ) -> Option<SpanContext>;
    fn record_runtime_diagnostic(
        &self,
        code: &str,
        field: Option<String>,
        message: String,
        count: u64,
    );
    fn set_full_payloads_enabled(&self, enabled: bool) -> Result<()>;
    fn try_scope_register_subscriber(
        &self,
        scope: &Uuid,
        name: &str,
        callback: EventSubscriberFn,
    ) -> Result<()>;
    fn try_scope_deregister_subscriber(
        &self,
        scope: &Uuid,
        name: &str,
    ) -> Result<bool>;
    fn scope_deregister_subscriber(
        &self,
        scope: &Uuid,
        name: &str,
    ) -> Result<bool>;
    fn is_trajectory_parent(&self, parent: Uuid) -> bool;
    fn record_plugin_diagnostic(&self, diagnostic: RuntimeDiagnostic);
}

Runtime operations used by the built-in exporters.

Required Methods

pricing_snapshot

fn pricing_snapshot(&self) -> Arc<dyn CostEstimator>

Capture the selected estimator for one projection operation. Detached exporters use the standalone catalog; runtime adapters override this with the embedding application’s selected pricing service.

register_subscriber

fn register_subscriber(
    &self,
    name: &str,
    callback: EventSubscriberFn,
) -> Result<()>

Register an exporter callback.

deregister_subscriber

fn deregister_subscriber(&self, name: &str) -> Result<bool>

Remove an exporter callback.

flush_subscribers

fn flush_subscribers(&self) -> Result<()>

Establish the runtime’s subscriber-delivery barrier.

w3c_span_context

fn w3c_span_context(
    &self,
    traceparent: Option<&str>,
    tracestate: Option<&str>,
) -> Option<SpanContext>

Parse remote W3C propagation context using the runtime’s policy.

record_runtime_diagnostic

fn record_runtime_diagnostic(
    &self,
    code: &str,
    field: Option<String>,
    message: String,
    count: u64,
)

Mirror an exporter diagnostic into the active plugin session.

set_full_payloads_enabled

fn set_full_payloads_enabled(&self, enabled: bool) -> Result<()>

Configure whether active scopes retain full observability payloads.

try_scope_register_subscriber

fn try_scope_register_subscriber(
    &self,
    scope: &Uuid,
    name: &str,
    callback: EventSubscriberFn,
) -> Result<()>

Register a subscriber on an open scope without emitting lookup diagnostics.

try_scope_deregister_subscriber

fn try_scope_deregister_subscriber(
    &self,
    scope: &Uuid,
    name: &str,
) -> Result<bool>

Remove a scoped subscriber without emitting lookup diagnostics.

scope_deregister_subscriber

fn scope_deregister_subscriber(&self, scope: &Uuid, name: &str) -> Result<bool>

Remove a scoped subscriber with ordinary runtime lookup behavior.

is_trajectory_parent

fn is_trajectory_parent(&self, parent: Uuid) -> bool

Whether a scope’s parent is the active root or a propagated parent.

record_plugin_diagnostic

fn record_plugin_diagnostic(&self, diagnostic: RuntimeDiagnostic)

Record an ATIF diagnostic, retaining its session correlation.

Implementors

impl ObservabilityHost for DetachedHost

impl ObservabilityHost for DetachedHost