diff --git a/packages/credential-provider-http/src/fromHttp/fromHttp.ts b/packages/credential-provider-http/src/fromHttp/fromHttp.ts index f505bcc6323b..53f8a4f024c4 100644 --- a/packages/credential-provider-http/src/fromHttp/fromHttp.ts +++ b/packages/credential-provider-http/src/fromHttp/fromHttp.ts @@ -28,7 +28,9 @@ export const fromHttp = (options: FromHttpOptions = {}): AwsCredentialIdentityPr const tokenFile = options.awsContainerAuthorizationTokenFile ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE]; const warn: (warning: string) => void = - options.logger?.constructor?.name === "NoOpLogger" || !options.logger ? console.warn : options.logger.warn; + options.logger?.constructor?.name === "NoOpLogger" || !options.logger?.warn + ? console.warn + : options.logger.warn.bind(options.logger); if (relative && full) { warn( diff --git a/packages/credential-provider-node/src/defaultProvider.ts b/packages/credential-provider-node/src/defaultProvider.ts index b16112434ec6..a629d5e27f65 100644 --- a/packages/credential-provider-node/src/defaultProvider.ts +++ b/packages/credential-provider-node/src/defaultProvider.ts @@ -70,7 +70,9 @@ export const defaultProvider = (init: DefaultProviderInit = {}): MemoizedProvide if (envStaticCredentialsAreSet) { if (!multipleCredentialSourceWarningEmitted) { const warnFn = - init.logger?.warn && init.logger?.constructor?.name !== "NoOpLogger" ? init.logger.warn : console.warn; + init.logger?.warn && init.logger?.constructor?.name !== "NoOpLogger" + ? init.logger.warn.bind(init.logger) + : console.warn; warnFn( `@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING: Multiple credential sources detected: