File: //home/cafsindia/snap.cafsinfotech.in/node_modules/@sentry/core/cjs/tracing/hubextensions.js.map
{"version":3,"file":"hubextensions.js","sources":["../../../src/tracing/hubextensions.ts"],"sourcesContent":["import type { ClientOptions, CustomSamplingContext, TransactionContext } from '@sentry/types';\nimport { logger } from '@sentry/utils';\n\nimport type { Hub } from '../hub';\nimport { getMainCarrier } from '../hub';\nimport { registerErrorInstrumentation } from './errors';\nimport { IdleTransaction } from './idletransaction';\nimport { sampleTransaction } from './sampling';\nimport { Transaction } from './transaction';\n\n/** Returns all trace headers that are currently on the top scope. */\nfunction traceHeaders(this: Hub): { [key: string]: string } {\n const scope = this.getScope();\n const span = scope.getSpan();\n\n return span\n ? {\n 'sentry-trace': span.toTraceparent(),\n }\n : {};\n}\n\n/**\n * Creates a new transaction and adds a sampling decision if it doesn't yet have one.\n *\n * The Hub.startTransaction method delegates to this method to do its work, passing the Hub instance in as `this`, as if\n * it had been called on the hub directly. Exists as a separate function so that it can be injected into the class as an\n * \"extension method.\"\n *\n * @param this: The Hub starting the transaction\n * @param transactionContext: Data used to configure the transaction\n * @param CustomSamplingContext: Optional data to be provided to the `tracesSampler` function (if any)\n *\n * @returns The new transaction\n *\n * @see {@link Hub.startTransaction}\n */\nfunction _startTransaction(\n this: Hub,\n transactionContext: TransactionContext,\n customSamplingContext?: CustomSamplingContext,\n): Transaction {\n const client = this.getClient();\n const options: Partial<ClientOptions> = (client && client.getOptions()) || {};\n\n const configInstrumenter = options.instrumenter || 'sentry';\n const transactionInstrumenter = transactionContext.instrumenter || 'sentry';\n\n if (configInstrumenter !== transactionInstrumenter) {\n __DEBUG_BUILD__ &&\n logger.error(\n `A transaction was started with instrumenter=\\`${transactionInstrumenter}\\`, but the SDK is configured with the \\`${configInstrumenter}\\` instrumenter.\nThe transaction will not be sampled. Please use the ${configInstrumenter} instrumentation to start transactions.`,\n );\n\n transactionContext.sampled = false;\n }\n\n let transaction = new Transaction(transactionContext, this);\n transaction = sampleTransaction(transaction, options, {\n parentSampled: transactionContext.parentSampled,\n transactionContext,\n ...customSamplingContext,\n });\n if (transaction.sampled) {\n transaction.initSpanRecorder(options._experiments && (options._experiments.maxSpans as number));\n }\n if (client && client.emit) {\n client.emit('startTransaction', transaction);\n }\n return transaction;\n}\n\n/**\n * Create new idle transaction.\n */\nexport function startIdleTransaction(\n hub: Hub,\n transactionContext: TransactionContext,\n idleTimeout: number,\n finalTimeout: number,\n onScope?: boolean,\n customSamplingContext?: CustomSamplingContext,\n heartbeatInterval?: number,\n): IdleTransaction {\n const client = hub.getClient();\n const options: Partial<ClientOptions> = (client && client.getOptions()) || {};\n\n let transaction = new IdleTransaction(transactionContext, hub, idleTimeout, finalTimeout, heartbeatInterval, onScope);\n transaction = sampleTransaction(transaction, options, {\n parentSampled: transactionContext.parentSampled,\n transactionContext,\n ...customSamplingContext,\n });\n if (transaction.sampled) {\n transaction.initSpanRecorder(options._experiments && (options._experiments.maxSpans as number));\n }\n if (client && client.emit) {\n client.emit('startTransaction', transaction);\n }\n return transaction;\n}\n\n/**\n * Adds tracing extensions to the global hub.\n */\nexport function addTracingExtensions(): void {\n const carrier = getMainCarrier();\n if (!carrier.__SENTRY__) {\n return;\n }\n carrier.__SENTRY__.extensions = carrier.__SENTRY__.extensions || {};\n if (!carrier.__SENTRY__.extensions.startTransaction) {\n carrier.__SENTRY__.extensions.startTransaction = _startTransaction;\n }\n if (!carrier.__SENTRY__.extensions.traceHeaders) {\n carrier.__SENTRY__.extensions.traceHeaders = traceHeaders;\n }\n\n registerErrorInstrumentation();\n}\n"],"names":["logger","transaction","Transaction","sampleTransaction","IdleTransaction","getMainCarrier","registerErrorInstrumentation"],"mappings":"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"}