Simon Cruanes
0bd8868172
update test outputs
2026-01-14 22:47:08 -05:00
Simon Cruanes
4aee136827
make tests compile
2026-01-14 22:31:46 -05:00
Simon Cruanes
2a866e60f8
fix fuchsia and tef backends to use trace_id
2026-01-14 22:30:00 -05:00
Simon Cruanes
5b83834af5
subscriber: restore trace_id
...
we need it for async backends, clearly
2026-01-14 22:29:46 -05:00
Simon Cruanes
c89a031e43
core: enter_span takes an optional flavor
...
it's a core extension, it should be easy to use
2026-01-14 22:29:32 -05:00
Simon Cruanes
2cfb3c67fa
port fuchsia to new subscriber
2026-01-14 22:09:33 -05:00
Simon Cruanes
7389ca5b45
fix warning
2026-01-14 22:09:25 -05:00
Simon Cruanes
322e1d0f44
subscriber: make ~new_span_id mandatory
...
too easy to forget otherwise
2026-01-14 22:09:05 -05:00
Simon Cruanes
7a392e54d1
trace-tef: use new subscriber, no more global state
2026-01-14 21:56:09 -05:00
Simon Cruanes
a1837e402e
trace.subscriber: define custom span, simplify subscriber callbacks
...
- custom span carries around all the required data, including mutable
args
- no more manual enter/exit callbacks
- use record for callbacks
- no more big Span_tbl
2026-01-14 21:56:09 -05:00
Simon Cruanes
40b44349e7
core: add on_init callback to collector
2026-01-14 21:56:09 -05:00
Simon Cruanes
8e2bb5bc83
remove event for now
2026-01-14 21:27:33 -05:00
Simon Cruanes
5018a9ead7
refactor core library
...
much cleaner now, and simpler.
- `span` is an open sum type, so it can carry as much info as we want
from enter to exit. This means most collectors shouldn't even need a
global table for spans!
- merge manual spans and spans. It's just spans now. Keep old
Trace_core.xxx_manual_xxx functions but deprecate them
- add `extension_parameter` to carry additional info to collector (eg
OTEL span kind, TEF sync/async, maybe span links, etc)
- make the collector into a record of callbacks + a state, for
efficiency (but also to make it easier to extend in the future with
callbacks that have a default implementation
)
2026-01-14 20:29:33 -05:00
Vincent Bernardoff
1c9a869148
ppx: call Stdlib.Printexc
...
This is because some libraries, i.e. Janestreet Core, override the
Printexc module.
2026-01-10 08:20:55 -05:00
Simon Cruanes
5141d4bde4
style
2026-01-09 16:04:03 -05:00
Simon Cruanes
ef35cc1d79
Merge pull request #38 from c-cube/simon/fix-ppxlib-0.37
...
adapt to ppxlib 0.37
2025-12-12 08:54:29 -05:00
Simon Cruanes
3f21ea67ce
update deps to ppxlib=0.37~
2025-12-09 12:24:52 -05:00
Simon Cruanes
0947d2d523
better error message
2025-12-09 12:24:52 -05:00
Simon Cruanes
b3da5bc41e
deal with Pexp_function
2025-12-09 12:24:48 -05:00
Simon Cruanes
9b4a3855fb
update test
2025-12-09 12:24:48 -05:00
Simon Cruanes
89eecf7ba3
breaking: use poly variants for user_data/span_flavor in subscriber
...
no need to do redundant conversions.
2025-12-04 12:39:03 -05:00
Simon Cruanes
aeb2aff3b7
breaking: require subscribers to provide mk_span/mk_trace_id
...
we want control over this!
2025-12-04 12:31:14 -05:00
Simon Cruanes
15edb582d0
fix: relax bound on ppxlib
2025-11-01 22:18:25 -04:00
Simon Cruanes
acae4ff88d
doc
2025-11-01 22:18:16 -04:00
Simon Cruanes
c2a1ee5904
format
2025-09-15 10:26:34 -04:00
Simon Cruanes
9a77dad2fd
chore: CI
2025-09-15 10:23:19 -04:00
Simon Cruanes
0c275b3aab
use at_exit in trace_tef/tldrs
2025-09-15 09:11:09 -04:00
Simon Cruanes
a81785f8c0
fix fuchsia: bound check
2025-07-26 01:20:40 -04:00
Simon Cruanes
d9cd7621f5
prepare for 0.10
2025-05-27 09:58:19 -04:00
Simon Cruanes
cd5785d938
format
2025-05-27 09:54:58 -04:00
Simon Cruanes
6853fa50f3
docs
2025-05-27 09:54:43 -04:00
Simon Cruanes
ba40156f22
chore: addd a tag to the opam package
2025-05-13 09:09:38 -04:00
Simon Cruanes
e6b17c5536
Merge pull request #36 from c-cube/simon/fuchsia-via-subscriber-2025-05-02
...
full refactoring of TEF and fuchsia backends
2025-05-08 09:44:58 -04:00
Simon Cruanes
d1759fea89
fix for 4.08
2025-05-07 22:32:29 -04:00
Simon Cruanes
4098e88c68
CI
2025-05-07 21:52:25 -04:00
Simon Cruanes
c3bd2f92a8
fix bench
2025-05-07 20:41:48 -04:00
Simon Cruanes
d7f0aff406
cleaner tracing errors
2025-05-07 17:19:47 -04:00
Simon Cruanes
86e65d2046
test: update and improve fuchsia tests
2025-05-07 17:19:47 -04:00
Simon Cruanes
7acc1b930f
detail
2025-05-07 15:35:11 -04:00
Simon Cruanes
190f70d7c9
feat fuchsia: full revamp of the library, modularized
...
- separate exporter, writer, subscriber
- use the subscriber span tbl to keep track of context
- use a `Buf_chain.t` to keep multiple buffers in use,
and keep a set of ready buffers
- batch write the ready buffers and then recycle them
2025-05-07 15:33:34 -04:00
Simon Cruanes
a4779227fa
add .mli for rpool
2025-05-07 13:15:37 -04:00
Simon Cruanes
81096e0d3c
refactor TEF: split into exporter,writer,subscriber
...
code is a lot cleaner now.
2025-05-07 13:08:22 -04:00
Simon Cruanes
4454975a61
feat util: remove b_queue, add Rpool
...
to be used in various buffer pools.
2025-05-07 13:06:55 -04:00
Simon Cruanes
005626a2cd
feat: add trace.event, useful for background threads
...
send these events into a queue and process them somewhere else.
2025-05-07 11:10:15 -04:00
Simon Cruanes
76703461ea
feat(trace.subscriber): add Span_tbl, and a depopt on picos_aux
2025-05-07 11:09:42 -04:00
Simon Cruanes
7cc16bc0b8
wip: test for fuchsia
2025-05-05 15:08:57 -04:00
Simon Cruanes
7405e3ae1b
wip: port fuchsia to subscriber infra
2025-05-05 15:08:57 -04:00
Simon Cruanes
ef50b578f1
refactor(subscriber): timestamps are int64ns now
2025-05-05 15:08:57 -04:00
Simon Cruanes
384dca93e2
fix: better retrocompat for enter_manual_{toplevel,sub}_span
2025-05-02 09:19:35 -04:00
Simon Cruanes
3c1360677a
subscriber: tee a whole array at once
2025-05-02 08:55:45 -04:00