Module Opentelemetry.Log_provider

val get : unit -> Logger.t
val set : Logger.t -> unit
val clear : unit -> unit
val get_logger : ?name:string -> ?version:string -> ?attrs:(string * [< Opentelemetry_core.Value.t ]) list -> ?__MODULE__:string -> unit -> Logger.t

Get a logger pre-configured with a fixed set of attributes added to every log record it emits, forwarding to the current global logger. Intended to be called once at the top of a library module.

  • parameter name

    instrumentation scope name (recorded as otel.scope.name)

  • parameter version

    instrumentation scope version (recorded as otel.scope.version)

  • parameter __MODULE__

    the OCaml module name, typically the __MODULE__ literal (recorded as code.namespace)

  • parameter attrs

    additional fixed attributes

val default_logger : Logger.t

A Logger.t that lazily reads the global at emit time

Emit log with current logger

val log : ?logger:Logger.t -> ?attrs:Opentelemetry_core.Key_value.t list -> ?trace_id:Opentelemetry_core.Trace_id.t -> ?span_id:Opentelemetry_core.Span_id.t -> ?severity:Opentelemetry_core.Log_record.severity -> string -> unit

Create log record and emit it on logger

val logf : ?logger:Logger.t -> ?attrs:Opentelemetry_core.Key_value.t list -> ?trace_id:Opentelemetry_core.Trace_id.t -> ?span_id:Opentelemetry_core.Span_id.t -> ?severity:Opentelemetry_core.Log_record.severity -> ((('a, Stdlib.Format.formatter, unit, unit) format4 -> 'a) -> unit) -> unit

Helper to create a log record, with a suspension, like in Logs.

Example usage: logf ~severity:Severity_number_warn (fun k->k"oh no!! %s it's bad: %b" "help" true)