mirror of
https://github.com/ocaml-tracing/ocaml-opentelemetry.git
synced 2026-03-08 03:47:59 -04:00
use the correct clock in logger/metrics; use ptime_clock as default
This commit is contained in:
parent
46960e2021
commit
e01a2f773b
6 changed files with 8 additions and 10 deletions
|
|
@ -3,8 +3,8 @@ open Opentelemetry_emitter
|
|||
|
||||
(** [debug ?out ()] is an exporter that pretty-prints signals on [out].
|
||||
@param out the formatter into which to print, default [stderr]. *)
|
||||
let debug ?(clock = OTEL.Clock.Main.dynamic_main) ?(out = Format.err_formatter)
|
||||
() : OTEL.Exporter.t =
|
||||
let debug ?(clock = OTEL.Clock.ptime_clock) ?(out = Format.err_formatter) () :
|
||||
OTEL.Exporter.t =
|
||||
let open Proto in
|
||||
let active, trigger = Aswitch.create () in
|
||||
let ticker = Cb_set.create () in
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ type t = {
|
|||
clock: Clock.t;
|
||||
}
|
||||
|
||||
let dummy : t = { emit = Emitter.dummy; clock = Clock.Main.dynamic_main }
|
||||
let dummy : t = { emit = Emitter.dummy; clock = Clock.ptime_clock }
|
||||
|
||||
let[@inline] enabled (self : t) : bool = Emitter.enabled self.emit
|
||||
|
||||
|
|
|
|||
|
|
@ -101,7 +101,7 @@ let dynamic_forward_to_main_exporter : Exporter.t =
|
|||
let shutdown () = () in
|
||||
{
|
||||
Exporter.active;
|
||||
clock = Clock.Main.dynamic_main;
|
||||
clock = Clock.ptime_clock;
|
||||
emit_metrics;
|
||||
emit_spans;
|
||||
emit_logs;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ type t = {
|
|||
clock: Clock.t;
|
||||
}
|
||||
|
||||
let dummy : t = { emit = Emitter.dummy; clock = Clock.Main.dynamic_main }
|
||||
let dummy : t = { emit = Emitter.dummy; clock = Clock.ptime_clock }
|
||||
|
||||
let[@inline] enabled (self : t) = Emitter.enabled self.emit
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ type t = {
|
|||
https://opentelemetry.io/docs/specs/otel/trace/api/#tracer *)
|
||||
|
||||
(** Dummy tracer, always disabled *)
|
||||
let dummy : t = { emit = Emitter.dummy; clock = Clock.Main.dynamic_main }
|
||||
let dummy : t = { emit = Emitter.dummy; clock = Clock.ptime_clock }
|
||||
|
||||
let[@inline] enabled (self : t) = Emitter.enabled self.emit
|
||||
|
||||
|
|
@ -50,8 +50,7 @@ let with_thunk_and_finally (self : t) ?(force_new_trace_id = false) ?trace_state
|
|||
| None, Some p -> Span.trace_id p
|
||||
| None, None -> Trace_id.create ()
|
||||
in
|
||||
(* TODO: pass a clock in emitters *)
|
||||
let start_time = Clock.now_main () in
|
||||
let start_time = Clock.now self.clock in
|
||||
let span_id = Span_id.create () in
|
||||
|
||||
let parent_id = Option.map Span.id parent in
|
||||
|
|
@ -62,7 +61,7 @@ let with_thunk_and_finally (self : t) ?(force_new_trace_id = false) ?trace_state
|
|||
in
|
||||
(* called once we're done, to emit a span *)
|
||||
let finally res =
|
||||
let end_time = Clock.now_main () in
|
||||
let end_time = Clock.now self.clock in
|
||||
Proto.Trace.span_set_end_time_unix_nano span end_time;
|
||||
|
||||
(match Span.status span with
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
open Lwt.Syntax
|
||||
include Opentelemetry
|
||||
|
||||
module Main_exporter = struct
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue