mirror of
https://github.com/ocaml-tracing/ocaml-trace.git
synced 2026-03-08 03:47:57 -04:00
api change: message does not take location
even tracy doesn't have that. Otoh a message should have an optional span for OTEL.
This commit is contained in:
parent
d913dbc1b1
commit
1735abeb8b
5 changed files with 12 additions and 24 deletions
|
|
@ -19,14 +19,7 @@ module type S = sig
|
||||||
span
|
span
|
||||||
|
|
||||||
val exit_span : span -> unit
|
val exit_span : span -> unit
|
||||||
|
val message : ?span:span -> data:(string * user_data) list -> string -> unit
|
||||||
val message :
|
|
||||||
?__FUNCTION__:string ->
|
|
||||||
__FILE__:string ->
|
|
||||||
__LINE__:int ->
|
|
||||||
data:(string * user_data) list ->
|
|
||||||
string ->
|
|
||||||
unit
|
|
||||||
|
|
||||||
val name_thread : string -> unit
|
val name_thread : string -> unit
|
||||||
(** Give a name to the current thread *)
|
(** Give a name to the current thread *)
|
||||||
|
|
|
||||||
|
|
@ -293,7 +293,7 @@ let collector ~out () : collector =
|
||||||
let time_us = now_us () in
|
let time_us = now_us () in
|
||||||
B_queue.push events (E_exit_span { id = span; time_us })
|
B_queue.push events (E_exit_span { id = span; time_us })
|
||||||
|
|
||||||
let message ?__FUNCTION__:_ ~__FILE__:_ ~__LINE__:_ ~data msg : unit =
|
let message ?span:_ ~data msg : unit =
|
||||||
let time_us = now_us () in
|
let time_us = now_us () in
|
||||||
let tid = get_tid_ () in
|
let tid = get_tid_ () in
|
||||||
B_queue.push events
|
B_queue.push events
|
||||||
|
|
|
||||||
15
src/trace.ml
15
src/trace.ml
|
|
@ -50,18 +50,17 @@ let[@inline] with_span ?__FUNCTION__ ~__FILE__ ~__LINE__ ?data name f =
|
||||||
with_span_collector_ collector ?__FUNCTION__ ~__FILE__ ~__LINE__ ?data name
|
with_span_collector_ collector ?__FUNCTION__ ~__FILE__ ~__LINE__ ?data name
|
||||||
f
|
f
|
||||||
|
|
||||||
let message_collector_ (module C : Collector.S) ?__FUNCTION__ ~__FILE__
|
let message_collector_ (module C : Collector.S) ?span ?(data = fun () -> []) msg
|
||||||
~__LINE__ ?(data = fun () -> []) msg : unit =
|
: unit =
|
||||||
let data = data () in
|
let data = data () in
|
||||||
C.message ?__FUNCTION__ ~__FILE__ ~__LINE__ ~data msg
|
C.message ?span ~data msg
|
||||||
|
|
||||||
let[@inline] message ?__FUNCTION__ ~__FILE__ ~__LINE__ ?data msg : unit =
|
let[@inline] message ?span ?data msg : unit =
|
||||||
match A.get collector with
|
match A.get collector with
|
||||||
| None -> ()
|
| None -> ()
|
||||||
| Some coll ->
|
| Some coll -> message_collector_ coll ?span ?data msg
|
||||||
message_collector_ coll ?__FUNCTION__ ~__FILE__ ~__LINE__ ?data msg
|
|
||||||
|
|
||||||
let messagef ?__FUNCTION__ ~__FILE__ ~__LINE__ ?data k =
|
let messagef ?span ?data k =
|
||||||
match A.get collector with
|
match A.get collector with
|
||||||
| None -> ()
|
| None -> ()
|
||||||
| Some (module C) ->
|
| Some (module C) ->
|
||||||
|
|
@ -73,7 +72,7 @@ let messagef ?__FUNCTION__ ~__FILE__ ~__LINE__ ?data k =
|
||||||
| None -> []
|
| None -> []
|
||||||
| Some f -> f ()
|
| Some f -> f ()
|
||||||
in
|
in
|
||||||
C.message ?__FUNCTION__ ~__FILE__ ~__LINE__ ~data str)
|
C.message ?span ~data str)
|
||||||
fmt)
|
fmt)
|
||||||
|
|
||||||
let set_thread_name name : unit =
|
let set_thread_name name : unit =
|
||||||
|
|
|
||||||
|
|
@ -31,9 +31,7 @@ val with_span :
|
||||||
'a
|
'a
|
||||||
|
|
||||||
val message :
|
val message :
|
||||||
?__FUNCTION__:string ->
|
?span:span ->
|
||||||
__FILE__:string ->
|
|
||||||
__LINE__:int ->
|
|
||||||
?data:(unit -> (string * user_data) list) ->
|
?data:(unit -> (string * user_data) list) ->
|
||||||
string ->
|
string ->
|
||||||
unit
|
unit
|
||||||
|
|
@ -41,9 +39,7 @@ val message :
|
||||||
(* TODO: counter/plot/metric *)
|
(* TODO: counter/plot/metric *)
|
||||||
|
|
||||||
val messagef :
|
val messagef :
|
||||||
?__FUNCTION__:string ->
|
?span:span ->
|
||||||
__FILE__:string ->
|
|
||||||
__LINE__:int ->
|
|
||||||
?data:(unit -> (string * user_data) list) ->
|
?data:(unit -> (string * user_data) list) ->
|
||||||
((('a, Format.formatter, unit, unit) format4 -> 'a) -> unit) ->
|
((('a, Format.formatter, unit, unit) format4 -> 'a) -> unit) ->
|
||||||
unit
|
unit
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@ let run () =
|
||||||
Trace.with_span ~__FILE__ ~__LINE__ "outer.loop" @@ fun _sp ->
|
Trace.with_span ~__FILE__ ~__LINE__ "outer.loop" @@ fun _sp ->
|
||||||
for _j = 2 to 5 do
|
for _j = 2 to 5 do
|
||||||
Trace.with_span ~__FILE__ ~__LINE__ "inner.loop" @@ fun _sp ->
|
Trace.with_span ~__FILE__ ~__LINE__ "inner.loop" @@ fun _sp ->
|
||||||
Trace.messagef ~__FILE__ ~__LINE__ (fun k -> k "hello %d %d" _i _j)
|
Trace.messagef (fun k -> k "hello %d %d" _i _j)
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue