12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- /*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- import { createContextKey } from '../context/context';
- import { NonRecordingSpan } from './NonRecordingSpan';
- import { ContextAPI } from '../api/context';
- /**
- * span key
- */
- const SPAN_KEY = createContextKey('OpenTelemetry Context Key SPAN');
- /**
- * Return the span if one exists
- *
- * @param context context to get span from
- */
- export function getSpan(context) {
- return context.getValue(SPAN_KEY) || undefined;
- }
- /**
- * Gets the span from the current context, if one exists.
- */
- export function getActiveSpan() {
- return getSpan(ContextAPI.getInstance().active());
- }
- /**
- * Set the span on a context
- *
- * @param context context to use as parent
- * @param span span to set active
- */
- export function setSpan(context, span) {
- return context.setValue(SPAN_KEY, span);
- }
- /**
- * Remove current span stored in the context
- *
- * @param context context to delete span from
- */
- export function deleteSpan(context) {
- return context.deleteValue(SPAN_KEY);
- }
- /**
- * Wrap span context in a NoopSpan and set as span in a new
- * context
- *
- * @param context context to set active span on
- * @param spanContext span context to be wrapped
- */
- export function setSpanContext(context, spanContext) {
- return setSpan(context, new NonRecordingSpan(spanContext));
- }
- /**
- * Get the span context of the span if it exists.
- *
- * @param context context to get values from
- */
- export function getSpanContext(context) {
- var _a;
- return (_a = getSpan(context)) === null || _a === void 0 ? void 0 : _a.spanContext();
- }
- //# sourceMappingURL=context-utils.js.map
|