Commit 4be1fcc
authored
feat!: root_span_id handling in otel thread ctx (#1834)
Depend on #1831.
# What does this PR do?
Follow-up of #1791. Add special handling of the `root_span_id` attribute, which is expected to be always provided by downstream users of libdatadog when publishing a thread context.
# Motivation
Addresses #1791 (comment).
# Additional Notes
Since we want to set it automatically and unconditionally, I've opted for the convention that the corresponding key is always set and is always the first in the string table located in the process context. I believe this is reasonable (since we always want to set this attribute) and achievable as long as we control the process-level context publication. But it might be a tad "magic".
Another possibility is to request the user to provide the key for the `datadog.root_span_id` attribute. It is a bit less ergonomic for end-users who need to ensure the key is present, and propagate the index to the code that does the context switching so that it can provide it when calling into `libdatadog`.
# How to test the change?
Tests have been updated to reflect the change.
Co-authored-by: yann.hamdaoui <yann.hamdaoui@datadoghq.com>1 parent 11d4111 commit 4be1fcc
2 files changed
Lines changed: 155 additions & 72 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | | - | |
38 | | - | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
39 | 44 | | |
40 | 45 | | |
41 | 46 | | |
42 | 47 | | |
43 | 48 | | |
44 | 49 | | |
45 | | - | |
| 50 | + | |
46 | 51 | | |
47 | 52 | | |
48 | 53 | | |
| |||
59 | 64 | | |
60 | 65 | | |
61 | 66 | | |
62 | | - | |
| 67 | + | |
63 | 68 | | |
64 | 69 | | |
65 | 70 | | |
| |||
124 | 129 | | |
125 | 130 | | |
126 | 131 | | |
127 | | - | |
| 132 | + | |
128 | 133 | | |
129 | 134 | | |
130 | 135 | | |
131 | 136 | | |
| 137 | + | |
132 | 138 | | |
133 | 139 | | |
134 | 140 | | |
135 | 141 | | |
136 | | - | |
137 | | - | |
138 | | - | |
139 | | - | |
140 | | - | |
141 | | - | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
142 | 151 | | |
143 | 152 | | |
144 | 153 | | |
| |||
250 | 259 | | |
251 | 260 | | |
252 | 261 | | |
253 | | - | |
| 262 | + | |
254 | 263 | | |
255 | 264 | | |
256 | 265 | | |
257 | | - | |
| 266 | + | |
258 | 267 | | |
259 | 268 | | |
260 | 269 | | |
| |||
282 | 291 | | |
283 | 292 | | |
284 | 293 | | |
285 | | - | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
286 | 303 | | |
287 | 304 | | |
0 commit comments