Commit graph

878 commits

Author SHA1 Message Date
Simon Cruanes
aa86fc455d
wip changelog
Some checks failed
format / format (push) Has been cancelled
build / build (4.08.x, ubuntu-latest) (push) Has been cancelled
build / build (4.13.x, ubuntu-latest) (push) Has been cancelled
build / build (5.0.x, ubuntu-latest) (push) Has been cancelled
build / build (5.3.x, ubuntu-latest) (push) Has been cancelled
2026-03-06 14:47:31 -05:00
Simon Cruanes
d57c182daa
add config parameter for self_metrics 2026-03-06 14:44:01 -05:00
Simon Cruanes
00d41b5354
format 2026-03-06 12:55:35 -05:00
Simon Cruanes
aa9e3f98ff
try weirder tricks for version generation 2026-03-06 12:32:16 -05:00
Simon Cruanes
d974213376
fix tests 2026-03-06 12:07:50 -05:00
Simon Cruanes
6faf23899f
format 2026-03-06 12:02:01 -05:00
Simon Cruanes
068baca4c9
follow otel semconv 2026-03-06 11:37:35 -05:00
Simon Cruanes
d77dbacfb5
fix warning by explicitly including unix 2026-03-06 11:34:04 -05:00
Simon Cruanes
6e07d48d5d
small refactor 2026-03-06 11:32:35 -05:00
Simon Cruanes
e0560ac730
globals: add sdk name+vesion to resource attributes 2026-03-06 11:32:26 -05:00
Simon Cruanes
ba264c7094
add auto-generated Version module to main lib 2026-03-06 11:32:08 -05:00
Simon Cruanes
b92159c11e
add Meter_provider.emit_l
Some checks are pending
format / format (push) Waiting to run
build / build (4.08.x, ubuntu-latest) (push) Waiting to run
build / build (4.13.x, ubuntu-latest) (push) Waiting to run
build / build (5.0.x, ubuntu-latest) (push) Waiting to run
build / build (5.3.x, ubuntu-latest) (push) Waiting to run
2026-03-05 15:20:38 -05:00
Simon Cruanes
0c29da4302
meter: add emit 2026-03-05 15:07:28 -05:00
Simon Cruanes
a28f24d14f
metrics: use main clock by default for data points 2026-03-05 14:46:46 -05:00
Simon Cruanes
e97088f6f7
fix warning 2026-03-05 14:46:33 -05:00
Simon Cruanes
05ef03b39d
Span.record_exception must also set the span status to error 2026-03-05 10:22:57 -05:00
Simon Cruanes
e2fe0f6683
dune shenanigan 2026-03-05 10:11:24 -05:00
Simon Cruanes
c442f3b818
batch: update n_dropped correctly; also self_debug in Emitter_batch 2026-03-04 13:16:40 -05:00
Simon Cruanes
31190a3606
providers: self debug at installation 2026-03-04 13:11:25 -05:00
Simon Cruanes
875101de9b
debug in bounded queue sync 2026-03-04 13:11:04 -05:00
Simon Cruanes
f70e5ae4a2
fix test 2026-03-03 20:08:13 -05:00
Simon Cruanes
4a097759d3
revert to no batching by default in Provider_config 2026-03-03 20:08:10 -05:00
Simon Cruanes
e72b986f14
test: add test to check Span.dummy never gets modified 2026-03-03 17:52:40 -05:00
Simon Cruanes
20e395abf4
fix span: missign checks for dummy span 2026-03-03 17:52:30 -05:00
Simon Cruanes
7c1eb2321b
fix self_trace by just relying on Trace_provider 2026-03-03 17:46:30 -05:00
Simon Cruanes
8d4ca8feb4
update test binaries 2026-03-03 17:16:08 -05:00
Simon Cruanes
d86b883c70
clients: setup self-debug as well 2026-03-03 17:16:04 -05:00
Simon Cruanes
f1f379d2e1
client: use self-debug and new provider config 2026-03-03 17:15:53 -05:00
Simon Cruanes
df643c9af6
add self_debug and provider_config 2026-03-03 17:10:19 -05:00
Simon Cruanes
478fe1da7b
otel.trace: have a single collector that always use current *_provider
just use the current Trace_provider.() (resp Log, Metrics) to emit a
span (resp log, metric). Simpler, and we rely on a global exporter
anyway.
2026-03-03 15:17:27 -05:00
Simon Cruanes
fa14ddf1f8
helpers to emit in *_provider 2026-03-03 15:14:32 -05:00
Simon Cruanes
14e892454c
opam 2026-02-27 16:35:53 -05:00
Simon Cruanes
a514ff8fe2
compat 4.08 2026-02-27 14:57:32 -05:00
Simon Cruanes
e3da59dd97
per signal provider, update to trace 0.12 2026-02-27 14:56:21 -05:00
Simon Cruanes
806545f2ba
format 2026-02-21 22:37:10 -05:00
Simon Cruanes
210b7991c9
rework tracer/meter/logger interfaces
- Meter is new, and makes more sense than
Metrics_callbacks/Metrics_emitter
- Instrument in core, with some basic counters, gauges, and histograms,
+ the possibility to do one's own
2026-02-20 12:31:15 -05:00
Simon Cruanes
d5f6b564db
shortcut in clock 2026-02-20 08:55:50 -05:00
Simon Cruanes
7cc0ee1701
CI: remove gh-pages, add format 2026-02-19 15:54:17 -05:00
Simon Cruanes
cb53b54b00
trace: expose the OTEL span 2026-02-19 15:29:56 -05:00
Simon Cruanes
4387bf8287
fix missing dep 2026-02-19 15:26:31 -05:00
Simon Cruanes
07070e3d4a emitter: add self_metrics, track batch n_dropped, sampler rate 2026-02-17 20:59:58 -05:00
Simon Cruanes
71bb7d1996 various fixes 2026-02-17 20:59:58 -05:00
Simon Cruanes
126e25b5a7
Merge pull request #123 from ocaml-tracing/simon/http-retry
HTTP improvements: retry, json protocol, key renames
2026-02-15 15:53:22 -05:00
Simon Cruanes
33a0ee69ba
refactor: extract should_retry 2026-02-15 15:35:15 -05:00
Simon Cruanes
a44c50581b
Support http/json protocol, carry protocol to HTTP emitter
- Regenerate proto bindings with yojson support
- Add JSON encoding path in Resource_signal.Encode
- Pass protocol from config to generic_http_consumer
- Set Content-Type/Accept headers based on protocol
- Remove hardcoded protobuf headers from all HTTP client implementations
- Add yojson dependency
2026-02-15 15:35:15 -05:00
Simon Cruanes
a43587f2a6
rename hmap keys with more consistent scheme 2026-02-15 15:35:08 -05:00
Simon Cruanes
e9485c97da
Add retry with exponential backoff to HTTP client
- Add retry_max_attempts, retry_initial_delay_ms, retry_max_delay_ms, retry_backoff_multiplier to config
- Retry on network failures, 5xx errors, 429 (rate limit), 408 (timeout)
- No retry on 4xx client errors or user interrupt (Sysbreak)
- Default: 3 attempts, 100ms initial delay, 5s max delay, 2x multiplier
- Uses existing IO.sleep_s from generic_io
2026-02-15 15:17:27 -05:00
Simon Cruanes
a54593c39c
Merge pull request #122 from ocaml-tracing/simon/missing-env-vars
add missing OTEL env variables
2026-02-15 15:15:16 -05:00
Simon Cruanes
e2aa473cf9
slight refactor 2026-02-15 15:08:30 -05:00
Simon Cruanes
8b9ea57a02
tweaks 2026-02-13 20:38:03 -05:00