From 3b86b9968afe8feb74e4374c066a8bbe8348b517 Mon Sep 17 00:00:00 2001 From: Andrea Amorosi Date: Tue, 5 Mar 2024 01:31:33 +0100 Subject: [PATCH] fix(tracer): modify aws-xray-sdk-core import for js --- packages/tracer/src/Tracer.ts | 6 ++++-- packages/tracer/src/provider/ProviderService.ts | 14 +++++++------- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/packages/tracer/src/Tracer.ts b/packages/tracer/src/Tracer.ts index 622adeae98..4b6f40f59a 100644 --- a/packages/tracer/src/Tracer.ts +++ b/packages/tracer/src/Tracer.ts @@ -17,7 +17,9 @@ import type { } from './types/Tracer.js'; import { ProviderService } from './provider/ProviderService.js'; import type { ProviderServiceInterface } from './types/ProviderServiceInterface.js'; -import { type Segment, Subsegment } from 'aws-xray-sdk-core'; +import type { Segment, Subsegment } from 'aws-xray-sdk-core'; +import xraySdk from 'aws-xray-sdk-core'; +const { Subsegment: XraySubsegment } = xraySdk; /** * ## Intro @@ -578,7 +580,7 @@ class Tracer extends Utility implements TracerInterface { */ public getSegment(): Segment | Subsegment | undefined { if (!this.isTracingEnabled()) { - return new Subsegment('## Dummy segment'); + return new XraySubsegment('## Dummy segment'); } const segment = this.provider.getSegment(); if (segment === undefined) { diff --git a/packages/tracer/src/provider/ProviderService.ts b/packages/tracer/src/provider/ProviderService.ts index 40130067b3..2194a8b8d9 100644 --- a/packages/tracer/src/provider/ProviderService.ts +++ b/packages/tracer/src/provider/ProviderService.ts @@ -3,7 +3,9 @@ import type { ProviderServiceInterface, ContextMissingStrategy, } from '../types/ProviderServiceInterface.js'; -import { +import type { Segment, Subsegment, Logger } from 'aws-xray-sdk-core'; +import xraySdk from 'aws-xray-sdk-core'; +const { captureAWS, captureAWSClient, captureAWSv3Client, @@ -13,13 +15,11 @@ import { getNamespace, getSegment, setSegment, - Segment, - Subsegment, + Segment: XraySegment, setContextMissingStrategy, setDaemonAddress, setLogger, - Logger, -} from 'aws-xray-sdk-core'; +} = xraySdk; import { addUserAgentMiddleware } from '@aws-lambda-powertools/commons'; class ProviderService implements ProviderServiceInterface { @@ -79,7 +79,7 @@ class ProviderService implements ProviderServiceInterface { return; } - if (segment instanceof Segment) { + if (segment instanceof XraySegment) { console.warn( 'You cannot annotate the main segment in a Lambda execution environment' ); @@ -98,7 +98,7 @@ class ProviderService implements ProviderServiceInterface { return; } - if (segment instanceof Segment) { + if (segment instanceof XraySegment) { console.warn( 'You cannot add metadata to the main segment in a Lambda execution environment' );