(headers)
| 65 | * @category decoding |
| 66 | */ |
| 67 | export const xb3: FromHeaders = (headers) => { |
| 68 | if (!(headers["x-b3-traceid"]) || !(headers["x-b3-spanid"])) { |
| 69 | return Option.none() |
| 70 | } |
| 71 | return Option.some(Tracer.externalSpan({ |
| 72 | traceId: headers["x-b3-traceid"], |
| 73 | spanId: headers["x-b3-spanid"], |
| 74 | sampled: headers["x-b3-sampled"] ? headers["x-b3-sampled"] === "1" : true |
| 75 | })) |
| 76 | } |
| 77 | |
| 78 | const w3cTraceId = /^[0-9a-f]{32}$/i |
| 79 | const w3cSpanId = /^[0-9a-f]{16}$/i |