1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
open Common_
open Proto.Trace
type t = span_link
let make ~trace_id ~span_id ?trace_state ?(attrs = []) ?dropped_attributes_count
() : t =
let attributes = List.map Key_value.conv attrs in
let dropped_attributes_count =
Option.map Int32.of_int dropped_attributes_count
in
make_span_link
~trace_id:(Trace_id.to_bytes trace_id)
~span_id:(Span_id.to_bytes span_id) ?trace_state ~attributes
?dropped_attributes_count ()
let[@inline] of_span_ctx ?trace_state ?attrs ?dropped_attributes_count
(ctx : Span_ctx.t) : t =
make ~trace_id:(Span_ctx.trace_id ctx) ~span_id:(Span_ctx.parent_id ctx)
?trace_state ?attrs ?dropped_attributes_count ()