UNPKG

@embrace-io/web-sdk

Version:
1 lines 2.26 kB
{"version":3,"file":"EmbraceTraceManager.cjs","names":["trace","KEY_EMB_TYPE","context","EmbraceExtendedSpan"],"sources":["../../../src/managers/EmbraceTraceManager/EmbraceTraceManager.ts"],"sourcesContent":["import type { Context, Tracer } from '@opentelemetry/api';\nimport { context, trace } from '@opentelemetry/api';\nimport type {\n ExtendedSpan,\n ExtendedSpanOptions,\n TraceManager,\n TraceManagerArgs,\n} from '../../api-traces/index.ts';\nimport { EMB_TYPES, KEY_EMB_TYPE } from '../../constants/index.ts';\nimport { EmbraceExtendedSpan } from './EmbraceExtendedSpan.ts';\n\nexport class EmbraceTraceManager implements TraceManager {\n private readonly _tracer: Tracer;\n\n public constructor({\n tracerProvider: globalTraceProviderOverride,\n }: TraceManagerArgs = {}) {\n const tracerProvider = globalTraceProviderOverride ?? trace;\n\n this._tracer = tracerProvider.getTracer('embrace-web-sdk-traces');\n }\n\n public startSpan(\n name: string,\n options: ExtendedSpanOptions = {},\n ctx?: Context,\n ): ExtendedSpan {\n options.attributes = options.attributes ? options.attributes : {};\n options.attributes[KEY_EMB_TYPE] = EMB_TYPES.Perf;\n\n const activeContext = options.parentSpan\n ? trace.setSpan(context.active(), options.parentSpan)\n : ctx;\n\n return new EmbraceExtendedSpan(\n this._tracer.startSpan(name, options, activeContext),\n );\n }\n\n public setSpan: TraceManager['setSpan'] = trace.setSpan;\n\n public getSpan(context: Context): ExtendedSpan | undefined {\n const span = trace.getSpan(context);\n\n if (span) {\n return new EmbraceExtendedSpan(span);\n }\n\n return undefined;\n }\n}\n"],"mappings":";;;;;AAWA,IAAa,sBAAb,MAAyD;CACvD;CAEA,YAAmB,EACjB,gBAAgB,gCACI,CAAC,GAAG;EACxB,MAAM,iBAAiB,+BAA+BA,mBAAAA;EAEtD,KAAK,UAAU,eAAe,UAAU,wBAAwB;CAClE;CAEA,UACE,MACA,UAA+B,CAAC,GAChC,KACc;EACd,QAAQ,aAAa,QAAQ,aAAa,QAAQ,aAAa,CAAC;EAChE,QAAQ,WAAWC,6BAAAA,gBAAAA;EAEnB,MAAM,gBAAgB,QAAQ,aAC1BD,mBAAAA,MAAM,QAAQE,mBAAAA,QAAQ,OAAO,GAAG,QAAQ,UAAU,IAClD;EAEJ,OAAO,IAAIC,yDAAAA,oBACT,KAAK,QAAQ,UAAU,MAAM,SAAS,aAAa,CACrD;CACF;CAEA,UAA0CH,mBAAAA,MAAM;CAEhD,QAAe,SAA4C;EACzD,MAAM,OAAOA,mBAAAA,MAAM,QAAQ,OAAO;EAElC,IAAI,MACF,OAAO,IAAIG,yDAAAA,oBAAoB,IAAI;CAIvC;AACF"}