-
add
trace.subscriber
instead of a separate library -
add
trace-tef.tldrs
, to trace multiple processes easily (with external rust daemon) -
breaking:
trace-tef
: usemtime.now
, not a counter, for multiproc -
trace-fuchsia
: require thread-local-storage 0.2
-
feat: add levels to
Trace_core
. Levels are similar tologs
levels, to help control verbosity. -
add hmap as a depopt (#28)
-
fix: truncate large strings in fuchsia
- add
ppx_trace
for easier instrumentation.let%trace span = "foo" in …
will enter a scopespan
named "foo"let%trace () = "foo" in …
will enter a scope named "foo" with a hidden name
- add
trace-fuchsia
backend, which produces traces in the binary format of fuchsia. These traces are reasonably efficient to produce (~60ns per span on my machines) and reasonably compact on disk, at least compared to the TEF backend.
- perf: reduce overhead in trace-tef
- perf: add Mpsc_queue, adapted from picos, to trace-tef
-
add
?data
tocounter_int
andcounter_float
-
add
float
to user data -
add
add_data_to_current_span
andadd_data_to_manual_span
-
make
explicit_span.meta
mutable -
trace-tef: write to
trace.json
if env variableTRACE
is either 1 or true -
trace-tef: emit function name, if provided, as a metadata key/value pair
-
re-export trace.core in trace
-
perf: in trace-tef, use broadcast instead of signal in the job queue
- add explicit spans, for more precise tracing
- rename repo to ocaml-trace
- trace-tef: add a ticker thread to ensure we flush the file regularly
- trace-tef: additional argument to
with_setup
; env for "stdout"/"stderr" - refactor: avoid conflicting with stdlib
Trace
module by adding sublibrarytrace.core
. Programs that usecompiler-libs.toplevel
should usetrace.core
directly, because usingtrace
will cause linking errors. - perf(trace-tef): improve behavior of collector under contention by pulling all events at once in the worker
initial release