Module Opentelemetry_client.Consumer

Consumer that accepts items from a bounded queue and processes them.

type t = {
  1. active : unit -> Opentelemetry_util.Aswitch.t;
  2. shutdown : unit -> unit;
    (*

    Shutdown the consumer as soon as possible. active will be turned off once the consumer is fully shut down.

    *)
  3. tick : unit -> unit;
    (*

    Regularly called, eg to emit metrics, check timeouts, etc. Must be thread safe.

    *)
  4. self_metrics : clock:Opentelemetry_client.Common_.OTEL.Clock.t -> unit -> Opentelemetry_client.Common_.OTEL.Metrics.t list;
    (*

    Self observing metrics

    *)
}

A consumer for signals of type 'a

type consumer = t
val shutdown : t -> unit
val on_stop : t -> (unit -> unit) -> unit

on_stop e f calls f() when e stops, or now if it's already stopped

module Builder : sig ... end
type resource_signal_builder = Resource_signal.t Builder.t

The type that's useful for HTTP backends