MCPcopy Index your code
hub / github.com/di-sukharev/opencommit / createTracingClient

Function createTracingClient

out/cli.cjs:76448–76496  ·  view source on GitHub ↗
(options)

Source from the content-addressed store, hash-verified

76446function getInstrumenter() {
76447 if (!state.instrumenterImplementation) {
76448 state.instrumenterImplementation = createDefaultInstrumenter();
76449 }
76450 return state.instrumenterImplementation;
76451}
76452
76453// node_modules/@azure/core-tracing/dist/esm/tracingClient.js
76454function createTracingClient(options) {
76455 const { namespace, packageName, packageVersion } = options;
76456 function startSpan(name, operationOptions, spanOptions) {
76457 var _a5;
76458 const startSpanResult = getInstrumenter().startSpan(name, Object.assign(Object.assign({}, spanOptions), { packageName, packageVersion, tracingContext: (_a5 = operationOptions === null || operationOptions === void 0 ? void 0 : operationOptions.tracingOptions) === null || _a5 === void 0 ? void 0 : _a5.tracingContext }));
76459 let tracingContext = startSpanResult.tracingContext;
76460 const span = startSpanResult.span;
76461 if (!tracingContext.getValue(knownContextKeys.namespace)) {
76462 tracingContext = tracingContext.setValue(knownContextKeys.namespace, namespace);
76463 }
76464 span.setAttribute("az.namespace", tracingContext.getValue(knownContextKeys.namespace));
76465 const updatedOptions = Object.assign({}, operationOptions, {
76466 tracingOptions: Object.assign(Object.assign({}, operationOptions === null || operationOptions === void 0 ? void 0 : operationOptions.tracingOptions), { tracingContext })
76467 });
76468 return {
76469 span,
76470 updatedOptions
76471 };
76472 }
76473 async function withSpan(name, operationOptions, callback, spanOptions) {
76474 const { span, updatedOptions } = startSpan(name, operationOptions, spanOptions);
76475 try {
76476 const result = await withContext(updatedOptions.tracingOptions.tracingContext, () => Promise.resolve(callback(updatedOptions, span)));
76477 span.setStatus({ status: "success" });
76478 return result;
76479 } catch (err) {
76480 span.setStatus({ status: "error", error: err });
76481 throw err;
76482 } finally {
76483 span.end();
76484 }
76485 }
76486 function withContext(context, callback, ...callbackArgs) {
76487 return getInstrumenter().withContext(context, callback, ...callbackArgs);
76488 }
76489 function parseTraceparentHeader(traceparentHeader) {
76490 return getInstrumenter().parseTraceparentHeader(traceparentHeader);
76491 }
76492 function createRequestHeaders(tracingContext) {
76493 return getInstrumenter().createRequestHeaders(tracingContext);
76494 }
76495 return {
76496 startSpan,
76497 withSpan,
76498 withContext,
76499 parseTraceparentHeader,

Callers 1

tryCreateTracingClientFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected