UNPKG

@embrace-io/web-sdk

Version:
1 lines 1.56 kB
{"version":3,"file":"EmbraceW3CTraceContextPropagator.cjs","names":["W3CTraceContextPropagator","trace","defaultTextMapGetter","KEY_EMB_W3C_TRACEPARENT"],"sources":["../../../src/propagators/EmbraceW3CTraceContextPropagator/EmbraceW3CTraceContextPropagator.ts"],"sourcesContent":["import type { Context, TextMapSetter } from '@opentelemetry/api';\nimport { defaultTextMapGetter, trace } from '@opentelemetry/api';\nimport { W3CTraceContextPropagator } from '@opentelemetry/core';\nimport { KEY_EMB_W3C_TRACEPARENT } from '../../constants/index.ts';\n\nexport class EmbraceW3CTraceContextPropagator extends W3CTraceContextPropagator {\n public override inject(\n context: Context,\n carrier: unknown,\n setter: TextMapSetter,\n ) {\n super.inject(context, carrier, setter);\n\n // Add the injected Traceparent header as an attribute to the span in the current\n // context if both are available\n const span = trace.getSpan(context);\n if (span) {\n const traceparent =\n carrier instanceof Headers\n ? carrier.get('traceparent')\n : defaultTextMapGetter.get(carrier, 'traceparent');\n if (traceparent) {\n span.setAttribute(KEY_EMB_W3C_TRACEPARENT, traceparent);\n }\n }\n }\n}\n"],"mappings":";;;;;AAKA,IAAa,mCAAb,cAAsDA,oBAAAA,0BAA0B;CAC9E,OACE,SACA,SACA,QACA;EACA,MAAM,OAAO,SAAS,SAAS,MAAM;EAIrC,MAAM,OAAOC,mBAAAA,MAAM,QAAQ,OAAO;EAClC,IAAI,MAAM;GACR,MAAM,cACJ,mBAAmB,UACf,QAAQ,IAAI,aAAa,IACzBC,mBAAAA,qBAAqB,IAAI,SAAS,aAAa;GACrD,IAAI,aACF,KAAK,aAAaC,6BAAAA,yBAAyB,WAAW;EAE1D;CACF;AACF"}