mirror of
https://github.com/c-cube/linol.git
synced 2025-12-06 03:05:31 -05:00
72 lines
2.4 KiB
Markdown
72 lines
2.4 KiB
Markdown
# 0.9.1
|
|
|
|
|
|
- fix: upper bound on ppxlib
|
|
- feat trace-tef: print names of non-closed spans upon exit
|
|
- fix: block signals in background threads
|
|
|
|
# 0.9
|
|
|
|
- add an extensible sum type, so users can implement custom events. For example
|
|
an OTEL collector can provide custom events to link two spans to one another.
|
|
|
|
# 0.8
|
|
|
|
- add `trace.subscriber` instead of a separate library
|
|
- add `trace-tef.tldrs`, to trace multiple processes easily (with external rust daemon)
|
|
|
|
- breaking: `trace-tef`: use `mtime.now`, not a counter, for multiproc
|
|
- `trace-fuchsia`: require thread-local-storage 0.2
|
|
|
|
# 0.7
|
|
|
|
- feat: add levels to `Trace_core`. Levels are similar to `logs` levels, to help control verbosity.
|
|
- add hmap as a depopt (#28)
|
|
|
|
- fix: truncate large strings in fuchsia
|
|
|
|
# 0.6
|
|
|
|
- add `ppx_trace` for easier instrumentation.
|
|
* `let%trace span = "foo" in …` will enter a scope `span` 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](https://fuchsia.dev/fuchsia-src/reference/tracing/trace-format).
|
|
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.
|
|
|
|
# 0.5
|
|
|
|
- perf: reduce overhead in trace-tef
|
|
- perf: add Mpsc_queue, adapted from picos, to trace-tef
|
|
|
|
# 0.4
|
|
|
|
- add `?data` to `counter_int` and `counter_float`
|
|
- add `float` to user data
|
|
- add `add_data_to_current_span` and `add_data_to_manual_span`
|
|
- make `explicit_span.meta` mutable
|
|
- trace-tef: write to `trace.json` if env variable `TRACE` 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
|
|
|
|
# 0.3
|
|
|
|
- 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
|
|
|
|
# 0.2
|
|
|
|
- trace-tef: additional argument to `with_setup`; env for "stdout"/"stderr"
|
|
- refactor: avoid conflicting with stdlib `Trace` module by adding sublibrary `trace.core`.
|
|
Programs that use `compiler-libs.toplevel` should use `trace.core`
|
|
directly, because using `trace` will cause linking errors.
|
|
- perf(trace-tef): improve behavior of collector under contention by
|
|
pulling all events at once in the worker
|
|
|
|
# 0.1
|
|
|
|
initial release
|