Simon Cruanes
69d1d512e3
add missing OTEL env variables
...
- Rename http_config to exporter_config with deprecated alias
- add OTEL_SDK_DISABLED support (sdk_disabled field)
- add OTEL_EXPORTER_OTLP_PROTOCOL support (Http_protobuf | Http_json)
- add OTEL_LOG_LEVEL support (log_level field replacing debug bool)
- add OTEL_EXPORTER_OTLP_TIMEOUT and per-signal timeout variants
- add per-signal headers
(OTEL_EXPORTER_OTLP_{TRACES,METRICS,LOGS}_HEADERS)
- add OTEL_SERVICE_NAME support
also remove some globals and put most config in `exporter_config.ml`,
which is no longer a private record.
2026-02-12 21:04:28 -05:00
Simon Cruanes
9696dfb511
relax bounds on trace, 0.11 is the one we want
2026-02-11 14:18:34 -05:00
Simon Cruanes
6fe90a3cfe
try to fix CI
2026-02-10 22:42:25 -05:00
Simon Cruanes
6f1e1627fe
Merge pull request #117 from ocaml-tracing/simon/refactor-main-otel-api
...
full overhaul of the library (⚠️ ), with many changes and improvements to the APIs.
2026-02-10 22:36:09 -05:00
Simon Cruanes
21e799ae61
Fix ezcurl 0.3 compatibility issue
...
The ezcurl library changed its client type from Curl.t to Ezcurl_core.t
(an unboxed record type) in version 0.3. Updated both sync and lwt
implementations to use the correct type and module functions.
2026-02-08 07:03:43 +00:00
Simon Cruanes
1ebd474423
fix: critical bugs found in code review
...
Bug #1 : Fix worker count logic in generic_consumer
- Was: min 2 (max 500 n_workers) - always created 2 workers
- Now: max 2 (min 500 n_workers) - properly clamps between 2-500
- Impact: Worker configuration was completely ignored
Bug #2 : Handle missing dot in __FUNCTION__ name
- Added exception handling for String.rindex in trace span creation
- Prevents crash when tracing top-level or non-module functions
- Uses option type for module_path when no dot is present
- Scoped try/catch to only parsing logic
2026-02-08 06:16:05 +00:00
Simon Cruanes
c29ac75a82
opentelemetry.trace: expose sum and hist metrics
2026-01-21 22:15:23 -05:00
Simon Cruanes
4183254546
update trace, fix opentelemetry.trace
2026-01-21 22:00:08 -05:00
Simon Cruanes
a3d375ce90
CI
2026-01-20 20:39:20 -05:00
Simon Cruanes
9af7e070b9
CI: trace refactor was merged into main
2026-01-20 20:24:56 -05:00
Simon Cruanes
47ce0b2efd
CI: pin+install ambient-context
2026-01-20 20:02:51 -05:00
Simon Cruanes
95fe450599
CI
2026-01-20 00:38:20 -05:00
Simon Cruanes
0c119c3eff
details
2026-01-20 00:15:31 -05:00
Simon Cruanes
ee144aec22
use an opam pin in CI
2026-01-20 00:15:31 -05:00
Simon Cruanes
26e70ed1af
refactor trace: adapt to newer trace 0.99
...
no more global state 🥳
2026-01-20 00:15:31 -05:00
Simon Cruanes
96aef5e021
use a separate ambient-context library
2026-01-20 00:15:31 -05:00
Simon Cruanes
0099bc5439
compat 4.08
2026-01-20 00:15:31 -05:00
Simon Cruanes
610244aad4
doc
2026-01-20 00:15:30 -05:00
Simon Cruanes
696a5d4b91
tidy up src/lib
2026-01-20 00:15:30 -05:00
Simon Cruanes
1a77e8d91e
remove matt from codeowners
2026-01-20 00:15:30 -05:00
Simon Cruanes
f31062a602
rename batching modules
2026-01-20 00:15:30 -05:00
Simon Cruanes
31aadebfd6
typo
2026-01-20 00:15:30 -05:00
Simon Cruanes
55a5d1ed88
disable nix CI for now
2026-01-20 00:15:30 -05:00
Simon Cruanes
f208a87eb8
remove Rpool, unused
2026-01-20 00:15:30 -05:00
Simon Cruanes
4f6334dac0
add Emitter_sample
2026-01-20 00:15:30 -05:00
Simon Cruanes
843d10dae1
detail
2026-01-20 00:15:30 -05:00
Simon Cruanes
d2d5b33751
add Emitter_limit_interval
2026-01-20 00:15:30 -05:00
Simon Cruanes
3ba0523227
details on Interval_limiter
2026-01-20 00:15:29 -05:00
Simon Cruanes
008ae6ddfd
add Emitter_add_batching to client library
...
fronting an emitter with a batch belongs in its own module
2026-01-20 00:15:29 -05:00
Simon Cruanes
07d8357cfb
docs
2026-01-20 00:15:29 -05:00
Simon Cruanes
513aafe6e8
span: carry flags over to span_link
2026-01-20 00:15:29 -05:00
Simon Cruanes
2d6ec5c0f6
remove temporary code in ambient-context
2026-01-20 00:15:29 -05:00
Simon Cruanes
ce33809446
ocurl lwt test
2026-01-20 00:15:29 -05:00
Simon Cruanes
cdd1289c1d
compat 4.08
2026-01-20 00:15:29 -05:00
Simon Cruanes
2d19ae2c46
compat with 4.08
2026-01-20 00:15:29 -05:00
Simon Cruanes
7b5b451b2c
finally redact these logs
2026-01-20 00:15:29 -05:00
Simon Cruanes
ae92077389
more docs
2026-01-20 00:15:29 -05:00
Simon Cruanes
b1589ccf76
stupid fix
2026-01-20 00:15:28 -05:00
Simon Cruanes
979a3ab3c8
test: redact current ocaml version from signal-gatherer output
...
this should make expect tests more robust.
2026-01-20 00:15:28 -05:00
Simon Cruanes
5622d81ae7
test: change port for test_logs_e2e
...
otherwise sometimes it clashes with the ocurl client test
2026-01-20 00:15:28 -05:00
Simon Cruanes
d9362ae788
feat: add runtime/otel-specific name and version modifiable
...
this way we can mock them in tests, but we can also change the name
"ocaml-otel" to something else, e.g. if we have specific conventions.
2026-01-20 00:15:28 -05:00
Simon Cruanes
ea1c6ba0f5
CI: pin ocaml-trace to a specific commit
2026-01-20 00:15:28 -05:00
Simon Cruanes
dc21341d92
try to fix compat with versions of cohttp
...
it seems like now IO is a required component of Cohttp_lwt.S.Client, so
now we should include parameter `C` so that it just contains whatever
the client has, minus the functions we change.
2026-01-20 00:15:28 -05:00
Simon Cruanes
581590abcc
fix build
2026-01-20 00:15:28 -05:00
Simon Cruanes
a2cee3d397
fix
2026-01-20 00:15:28 -05:00
Simon Cruanes
ca6482085d
try to fix CI
2026-01-20 00:15:28 -05:00
Simon Cruanes
f5a13a1248
debug
2026-01-20 00:15:28 -05:00
Simon Cruanes
6ddfe1715a
more e2e tests, including cohttp_lwt
2026-01-20 00:15:27 -05:00
Simon Cruanes
d3559015df
emit1_cohttp: more options, more debug
2026-01-20 00:15:27 -05:00
Simon Cruanes
b4b864a0b6
fix otel-lwt: logic for tracer.with_ was invalid
...
sometimes spans would be dropped!
2026-01-20 00:15:27 -05:00