autotel-aws 0.13.21 → 0.13.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as isAutoInstrumentEnabled, i as instrumentSDK, n as createTracedClient, r as disableAutoInstrumentAWS, t as autoInstrumentAWS } from "./sdk-
|
|
1
|
+
import { a as isAutoInstrumentEnabled, i as instrumentSDK, n as createTracedClient, r as disableAutoInstrumentAWS, t as autoInstrumentAWS } from "./sdk-C4EzYQRq.js";
|
|
2
2
|
import { AWS_ATTRS, buildDynamoDBAttributes, buildEventBridgeAttributes, buildKinesisAttributes, buildLambdaAttributes, buildS3Attributes, buildSDKAttributes, buildSNSAttributes, buildSQSAttributes, buildStepFunctionsAttributes } from "./attributes.js";
|
|
3
3
|
import { a as extractServiceName, i as extractRequestMetadata, n as extractResponseMetadata, o as classifyAWSError, r as extractOperationName, s as extractErrorAttributes, t as wrapSDKClient } from "./sdk-wrapper-BVr62EfA.js";
|
|
4
4
|
import { a as traceLambda, c as extractTraceContext, i as tracingMiddleware, n as getContextFromRequest, o as wrapHandler, r as getSpanFromRequest, s as detectTriggerType, t as LambdaMiddleware } from "./lambda-DYyKH-f-.js";
|
|
@@ -2,7 +2,7 @@ import { t as wrapSDKClient } from "./sdk-wrapper-BVr62EfA.js";
|
|
|
2
2
|
import { createRequire } from "node:module";
|
|
3
3
|
|
|
4
4
|
//#region \0rolldown/runtime.js
|
|
5
|
-
var __require = /*
|
|
5
|
+
var __require = /* #__PURE__ */ (() => createRequire(import.meta.url))();
|
|
6
6
|
|
|
7
7
|
//#endregion
|
|
8
8
|
//#region src/sdk/auto-instrument.ts
|
|
@@ -195,4 +195,4 @@ function isAutoInstrumentEnabled() {
|
|
|
195
195
|
|
|
196
196
|
//#endregion
|
|
197
197
|
export { isAutoInstrumentEnabled as a, instrumentSDK as i, createTracedClient as n, disableAutoInstrumentAWS as r, autoInstrumentAWS as t };
|
|
198
|
-
//# sourceMappingURL=sdk-
|
|
198
|
+
//# sourceMappingURL=sdk-C4EzYQRq.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk-C-o7ngkk.js","names":[],"sources":["../src/sdk/auto-instrument.ts"],"sourcesContent":["/**\n * AWS SDK v3 auto-instrumentation\n *\n * Provides multiple approaches for instrumenting AWS SDK v3 clients:\n * 1. `instrumentSDK()` - Wrap an existing client instance\n * 2. `createTracedClient()` - Create a pre-instrumented client\n * 3. `autoInstrumentAWS()` - Globally patch all AWS SDK clients\n *\n * @example Basic instrumentation\n * ```typescript\n * import { instrumentSDK } from 'autotel-aws/sdk';\n * import { S3Client, PutObjectCommand } from '@aws-sdk/client-s3';\n *\n * const s3 = instrumentSDK(new S3Client({ region: 'us-east-1' }));\n *\n * // All send() calls are now traced\n * await s3.send(new PutObjectCommand({ Bucket: 'my-bucket', Key: 'file.txt' }));\n * ```\n */\n\n// Type-only import from optional peer dependency\n// @ts-expect-error - Optional peer dependency, may not be installed\nimport type { Client, Command } from '@aws-sdk/smithy-client';\nimport { wrapSDKClient } from '../common/sdk-wrapper';\nimport type { SDKInstrumentationConfig } from '../config';\n\n// Symbol to mark clients as instrumented (prevents double-wrapping)\nconst INSTRUMENTED_SYMBOL = Symbol.for('autotel-aws.instrumented');\n\n// Track whether global auto-instrumentation is active\nlet globalAutoInstrumentEnabled = false;\n\n// Store original send method for restoration\nlet originalSmithyClientSend: ((...args: unknown[]) => Promise<unknown>) | null = null;\n\n/**\n * Check if a client is already instrumented\n */\nfunction isInstrumented(client: unknown): boolean {\n return (\n typeof client === 'object' &&\n client !== null &&\n (client as Record<symbol, boolean>)[INSTRUMENTED_SYMBOL] === true\n );\n}\n\n/**\n * Mark a client as instrumented\n */\nfunction markAsInstrumented<T>(client: T): T {\n (client as Record<symbol, boolean>)[INSTRUMENTED_SYMBOL] = true;\n return client;\n}\n\n/**\n * Instrument an existing AWS SDK v3 client\n *\n * Wraps the client's `send()` method to automatically create spans\n * for all AWS API calls with proper semantic attributes.\n *\n * @param client - An AWS SDK v3 client instance\n * @param config - Optional instrumentation configuration\n * @returns The instrumented client (same instance, modified)\n *\n * @example Basic usage\n * ```typescript\n * import { instrumentSDK } from 'autotel-aws/sdk';\n * import { S3Client } from '@aws-sdk/client-s3';\n *\n * const s3 = instrumentSDK(new S3Client({ region: 'us-east-1' }));\n * ```\n *\n * @example With configuration\n * ```typescript\n * const s3 = instrumentSDK(new S3Client({}), {\n * service: 's3',\n * captureRequest: true,\n * captureResponse: true\n * });\n * ```\n *\n * @remarks\n * Semantic attributes set automatically:\n * - `rpc.system` - 'aws-api'\n * - `rpc.service` - AWS service name (e.g., 'S3', 'DynamoDB')\n * - `rpc.method` - Operation name (e.g., 'GetObject', 'PutItem')\n * - `aws.request_id` - AWS request ID from response\n * - `http.status_code` - HTTP status code\n *\n * @see https://opentelemetry.io/docs/specs/semconv/cloud-providers/aws-sdk/\n */\nexport function instrumentSDK<T extends Client<unknown, unknown, unknown, unknown>>(\n client: T,\n config?: SDKInstrumentationConfig,\n): T {\n // Prevent double-instrumentation\n if (isInstrumented(client)) {\n return client;\n }\n\n const wrappedClient = wrapSDKClient(client, config?.service);\n return markAsInstrumented(wrappedClient);\n}\n\n/**\n * Create a pre-instrumented AWS SDK v3 client\n *\n * Convenience factory that creates and instruments a client in one call.\n *\n * @param ClientClass - The AWS SDK client class constructor\n * @param config - Client configuration merged with instrumentation config\n * @returns A new instrumented client instance\n *\n * @example\n * ```typescript\n * import { createTracedClient } from 'autotel-aws/sdk';\n * import { S3Client } from '@aws-sdk/client-s3';\n * import { DynamoDBClient } from '@aws-sdk/client-dynamodb';\n *\n * // Create instrumented clients\n * const s3 = createTracedClient(S3Client, { region: 'us-east-1' });\n * const dynamodb = createTracedClient(DynamoDBClient, {\n * region: 'us-east-1',\n * captureRequest: true\n * });\n * ```\n */\nexport function createTracedClient<\n \n T extends new (...args: any[]) => Client<unknown, unknown, unknown, unknown>,\n>(\n ClientClass: T,\n config?: SDKInstrumentationConfig & ConstructorParameters<T>[0],\n): InstanceType<T> {\n \n const client = new ClientClass(config as any);\n return instrumentSDK(client, config) as InstanceType<T>;\n}\n\n/**\n * Auto-instrument all AWS SDK v3 clients globally\n *\n * Patches the AWS SDK's base Client class to automatically instrument\n * all client instances created after this call. This is the most convenient\n * approach but requires the AWS SDK to be installed.\n *\n * Call this once at application startup, before creating any clients.\n *\n * @param config - Optional default instrumentation configuration\n *\n * @example Basic usage\n * ```typescript\n * import { autoInstrumentAWS } from 'autotel-aws/sdk';\n *\n * // Call once at startup\n * autoInstrumentAWS();\n *\n * // All subsequent clients are automatically instrumented\n * const s3 = new S3Client({ region: 'us-east-1' });\n * const dynamodb = new DynamoDBClient({ region: 'us-east-1' });\n *\n * // Both are traced automatically\n * await s3.send(new GetObjectCommand({ Bucket: 'b', Key: 'k' }));\n * await dynamodb.send(new GetItemCommand({ TableName: 't', Key: {} }));\n * ```\n *\n * @example With default configuration\n * ```typescript\n * autoInstrumentAWS({\n * captureRequest: false,\n * captureResponse: false\n * });\n * ```\n *\n * @remarks\n * - This function is idempotent - calling it multiple times has no effect\n * - Clients created before calling this function are NOT instrumented\n * - Use `instrumentSDK()` for clients created before auto-instrumentation\n * - Requires `@aws-sdk/smithy-client` to be installed (peer dependency)\n *\n * @throws Error if AWS SDK is not installed\n */\nexport function autoInstrumentAWS(config?: SDKInstrumentationConfig): void {\n // Idempotency check\n if (globalAutoInstrumentEnabled) {\n return;\n }\n\n // Try to get the smithy-client module\n \n let SmithyClient: any;\n try {\n // Dynamic require to avoid bundling issues\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n SmithyClient = require('@aws-sdk/smithy-client').Client;\n } catch {\n // Try the core package (newer SDK versions)\n try {\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n SmithyClient = require('@smithy/smithy-client').Client;\n } catch {\n console.warn(\n '[autotel-aws] autoInstrumentAWS() requires @aws-sdk/smithy-client or @smithy/smithy-client. ' +\n 'Install an AWS SDK v3 client package (e.g., @aws-sdk/client-s3) or use instrumentSDK() directly.',\n );\n return;\n }\n }\n\n // Store original send for potential restoration\n originalSmithyClientSend = SmithyClient.prototype.send;\n\n // Patch the prototype's send method\n const originalSend = SmithyClient.prototype.send;\n\n SmithyClient.prototype.send = function patchedSend(\n this: Client<unknown, unknown, unknown, unknown>,\n command: Command<unknown, unknown, unknown, unknown, unknown>,\n ...args: unknown[]\n ): Promise<unknown> {\n // Skip if this specific client is already instrumented (via instrumentSDK)\n if (isInstrumented(this)) {\n return originalSend.call(this, command, ...args);\n }\n\n // Create a one-time wrapped client for this call\n // This is less efficient than pre-wrapping, but ensures all calls are traced\n const wrappedClient = wrapSDKClient(this as Client<unknown, unknown, unknown, unknown>, config?.service);\n \n return (wrappedClient as any).send(command, ...args);\n };\n\n globalAutoInstrumentEnabled = true;\n}\n\n/**\n * Disable global auto-instrumentation\n *\n * Restores the original AWS SDK behavior. Useful for testing or\n * when you need to disable instrumentation temporarily.\n *\n * @example\n * ```typescript\n * import { autoInstrumentAWS, disableAutoInstrumentAWS } from 'autotel-aws/sdk';\n *\n * autoInstrumentAWS();\n * // ... use instrumented clients ...\n *\n * disableAutoInstrumentAWS();\n * // Subsequent operations are not traced\n * ```\n */\nexport function disableAutoInstrumentAWS(): void {\n if (!globalAutoInstrumentEnabled || !originalSmithyClientSend) {\n return;\n }\n\n \n let SmithyClient: any;\n try {\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n SmithyClient = require('@aws-sdk/smithy-client').Client;\n } catch {\n try {\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n SmithyClient = require('@smithy/smithy-client').Client;\n } catch {\n return;\n }\n }\n\n // Restore original send\n SmithyClient.prototype.send = originalSmithyClientSend;\n originalSmithyClientSend = null;\n globalAutoInstrumentEnabled = false;\n}\n\n/**\n * Check if global auto-instrumentation is enabled\n */\nexport function isAutoInstrumentEnabled(): boolean {\n return globalAutoInstrumentEnabled;\n}\n"],"mappings":";;;;;;;;AA2BA,MAAM,sBAAsB,OAAO,IAAI,0BAA0B;AAGjE,IAAI,8BAA8B;AAGlC,IAAI,2BAA8E;;;;AAKlF,SAAS,eAAe,QAA0B;CAChD,OACE,OAAO,WAAW,YAClB,WAAW,QACV,OAAmC,yBAAyB;AAEjE;;;;AAKA,SAAS,mBAAsB,QAAc;CAC3C,AAAC,OAAmC,uBAAuB;CAC3D,OAAO;AACT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCA,SAAgB,cACd,QACA,QACG;CAEH,IAAI,eAAe,MAAM,GACvB,OAAO;CAIT,OAAO,mBADe,cAAc,QAAQ,QAAQ,OACd,CAAC;AACzC;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,SAAgB,mBAId,aACA,QACiB;CAGjB,OAAO,cAAc,IADF,YAAY,MACL,GAAG,MAAM;AACrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,SAAgB,kBAAkB,QAAyC;CAEzE,IAAI,6BACF;CAKF,IAAI;CACJ,IAAI;EAGF,yBAAuB,wBAAwB,CAAC,CAAC;CACnD,QAAQ;EAEN,IAAI;GAEF,yBAAuB,uBAAuB,CAAC,CAAC;EAClD,QAAQ;GACN,QAAQ,KACN,8LAEF;GACA;EACF;CACF;CAGA,2BAA2B,aAAa,UAAU;CAGlD,MAAM,eAAe,aAAa,UAAU;CAE5C,aAAa,UAAU,OAAO,SAAS,YAErC,SACA,GAAG,MACe;EAElB,IAAI,eAAe,IAAI,GACrB,OAAO,aAAa,KAAK,MAAM,SAAS,GAAG,IAAI;EAOjD,OAFsB,cAAc,MAAoD,QAAQ,OAE5E,CAAC,CAAS,KAAK,SAAS,GAAG,IAAI;CACrD;CAEA,8BAA8B;AAChC;;;;;;;;;;;;;;;;;;AAmBA,SAAgB,2BAAiC;CAC/C,IAAI,CAAC,+BAA+B,CAAC,0BACnC;CAIF,IAAI;CACJ,IAAI;EAEF,yBAAuB,wBAAwB,CAAC,CAAC;CACnD,QAAQ;EACN,IAAI;GAEF,yBAAuB,uBAAuB,CAAC,CAAC;EAClD,QAAQ;GACN;EACF;CACF;CAGA,aAAa,UAAU,OAAO;CAC9B,2BAA2B;CAC3B,8BAA8B;AAChC;;;;AAKA,SAAgB,0BAAmC;CACjD,OAAO;AACT"}
|
|
1
|
+
{"version":3,"file":"sdk-C4EzYQRq.js","names":[],"sources":["../src/sdk/auto-instrument.ts"],"sourcesContent":["/**\n * AWS SDK v3 auto-instrumentation\n *\n * Provides multiple approaches for instrumenting AWS SDK v3 clients:\n * 1. `instrumentSDK()` - Wrap an existing client instance\n * 2. `createTracedClient()` - Create a pre-instrumented client\n * 3. `autoInstrumentAWS()` - Globally patch all AWS SDK clients\n *\n * @example Basic instrumentation\n * ```typescript\n * import { instrumentSDK } from 'autotel-aws/sdk';\n * import { S3Client, PutObjectCommand } from '@aws-sdk/client-s3';\n *\n * const s3 = instrumentSDK(new S3Client({ region: 'us-east-1' }));\n *\n * // All send() calls are now traced\n * await s3.send(new PutObjectCommand({ Bucket: 'my-bucket', Key: 'file.txt' }));\n * ```\n */\n\n// Type-only import from optional peer dependency\n// @ts-expect-error - Optional peer dependency, may not be installed\nimport type { Client, Command } from '@aws-sdk/smithy-client';\nimport { wrapSDKClient } from '../common/sdk-wrapper';\nimport type { SDKInstrumentationConfig } from '../config';\n\n// Symbol to mark clients as instrumented (prevents double-wrapping)\nconst INSTRUMENTED_SYMBOL = Symbol.for('autotel-aws.instrumented');\n\n// Track whether global auto-instrumentation is active\nlet globalAutoInstrumentEnabled = false;\n\n// Store original send method for restoration\nlet originalSmithyClientSend: ((...args: unknown[]) => Promise<unknown>) | null = null;\n\n/**\n * Check if a client is already instrumented\n */\nfunction isInstrumented(client: unknown): boolean {\n return (\n typeof client === 'object' &&\n client !== null &&\n (client as Record<symbol, boolean>)[INSTRUMENTED_SYMBOL] === true\n );\n}\n\n/**\n * Mark a client as instrumented\n */\nfunction markAsInstrumented<T>(client: T): T {\n (client as Record<symbol, boolean>)[INSTRUMENTED_SYMBOL] = true;\n return client;\n}\n\n/**\n * Instrument an existing AWS SDK v3 client\n *\n * Wraps the client's `send()` method to automatically create spans\n * for all AWS API calls with proper semantic attributes.\n *\n * @param client - An AWS SDK v3 client instance\n * @param config - Optional instrumentation configuration\n * @returns The instrumented client (same instance, modified)\n *\n * @example Basic usage\n * ```typescript\n * import { instrumentSDK } from 'autotel-aws/sdk';\n * import { S3Client } from '@aws-sdk/client-s3';\n *\n * const s3 = instrumentSDK(new S3Client({ region: 'us-east-1' }));\n * ```\n *\n * @example With configuration\n * ```typescript\n * const s3 = instrumentSDK(new S3Client({}), {\n * service: 's3',\n * captureRequest: true,\n * captureResponse: true\n * });\n * ```\n *\n * @remarks\n * Semantic attributes set automatically:\n * - `rpc.system` - 'aws-api'\n * - `rpc.service` - AWS service name (e.g., 'S3', 'DynamoDB')\n * - `rpc.method` - Operation name (e.g., 'GetObject', 'PutItem')\n * - `aws.request_id` - AWS request ID from response\n * - `http.status_code` - HTTP status code\n *\n * @see https://opentelemetry.io/docs/specs/semconv/cloud-providers/aws-sdk/\n */\nexport function instrumentSDK<T extends Client<unknown, unknown, unknown, unknown>>(\n client: T,\n config?: SDKInstrumentationConfig,\n): T {\n // Prevent double-instrumentation\n if (isInstrumented(client)) {\n return client;\n }\n\n const wrappedClient = wrapSDKClient(client, config?.service);\n return markAsInstrumented(wrappedClient);\n}\n\n/**\n * Create a pre-instrumented AWS SDK v3 client\n *\n * Convenience factory that creates and instruments a client in one call.\n *\n * @param ClientClass - The AWS SDK client class constructor\n * @param config - Client configuration merged with instrumentation config\n * @returns A new instrumented client instance\n *\n * @example\n * ```typescript\n * import { createTracedClient } from 'autotel-aws/sdk';\n * import { S3Client } from '@aws-sdk/client-s3';\n * import { DynamoDBClient } from '@aws-sdk/client-dynamodb';\n *\n * // Create instrumented clients\n * const s3 = createTracedClient(S3Client, { region: 'us-east-1' });\n * const dynamodb = createTracedClient(DynamoDBClient, {\n * region: 'us-east-1',\n * captureRequest: true\n * });\n * ```\n */\nexport function createTracedClient<\n \n T extends new (...args: any[]) => Client<unknown, unknown, unknown, unknown>,\n>(\n ClientClass: T,\n config?: SDKInstrumentationConfig & ConstructorParameters<T>[0],\n): InstanceType<T> {\n \n const client = new ClientClass(config as any);\n return instrumentSDK(client, config) as InstanceType<T>;\n}\n\n/**\n * Auto-instrument all AWS SDK v3 clients globally\n *\n * Patches the AWS SDK's base Client class to automatically instrument\n * all client instances created after this call. This is the most convenient\n * approach but requires the AWS SDK to be installed.\n *\n * Call this once at application startup, before creating any clients.\n *\n * @param config - Optional default instrumentation configuration\n *\n * @example Basic usage\n * ```typescript\n * import { autoInstrumentAWS } from 'autotel-aws/sdk';\n *\n * // Call once at startup\n * autoInstrumentAWS();\n *\n * // All subsequent clients are automatically instrumented\n * const s3 = new S3Client({ region: 'us-east-1' });\n * const dynamodb = new DynamoDBClient({ region: 'us-east-1' });\n *\n * // Both are traced automatically\n * await s3.send(new GetObjectCommand({ Bucket: 'b', Key: 'k' }));\n * await dynamodb.send(new GetItemCommand({ TableName: 't', Key: {} }));\n * ```\n *\n * @example With default configuration\n * ```typescript\n * autoInstrumentAWS({\n * captureRequest: false,\n * captureResponse: false\n * });\n * ```\n *\n * @remarks\n * - This function is idempotent - calling it multiple times has no effect\n * - Clients created before calling this function are NOT instrumented\n * - Use `instrumentSDK()` for clients created before auto-instrumentation\n * - Requires `@aws-sdk/smithy-client` to be installed (peer dependency)\n *\n * @throws Error if AWS SDK is not installed\n */\nexport function autoInstrumentAWS(config?: SDKInstrumentationConfig): void {\n // Idempotency check\n if (globalAutoInstrumentEnabled) {\n return;\n }\n\n // Try to get the smithy-client module\n \n let SmithyClient: any;\n try {\n // Dynamic require to avoid bundling issues\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n SmithyClient = require('@aws-sdk/smithy-client').Client;\n } catch {\n // Try the core package (newer SDK versions)\n try {\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n SmithyClient = require('@smithy/smithy-client').Client;\n } catch {\n console.warn(\n '[autotel-aws] autoInstrumentAWS() requires @aws-sdk/smithy-client or @smithy/smithy-client. ' +\n 'Install an AWS SDK v3 client package (e.g., @aws-sdk/client-s3) or use instrumentSDK() directly.',\n );\n return;\n }\n }\n\n // Store original send for potential restoration\n originalSmithyClientSend = SmithyClient.prototype.send;\n\n // Patch the prototype's send method\n const originalSend = SmithyClient.prototype.send;\n\n SmithyClient.prototype.send = function patchedSend(\n this: Client<unknown, unknown, unknown, unknown>,\n command: Command<unknown, unknown, unknown, unknown, unknown>,\n ...args: unknown[]\n ): Promise<unknown> {\n // Skip if this specific client is already instrumented (via instrumentSDK)\n if (isInstrumented(this)) {\n return originalSend.call(this, command, ...args);\n }\n\n // Create a one-time wrapped client for this call\n // This is less efficient than pre-wrapping, but ensures all calls are traced\n const wrappedClient = wrapSDKClient(this as Client<unknown, unknown, unknown, unknown>, config?.service);\n \n return (wrappedClient as any).send(command, ...args);\n };\n\n globalAutoInstrumentEnabled = true;\n}\n\n/**\n * Disable global auto-instrumentation\n *\n * Restores the original AWS SDK behavior. Useful for testing or\n * when you need to disable instrumentation temporarily.\n *\n * @example\n * ```typescript\n * import { autoInstrumentAWS, disableAutoInstrumentAWS } from 'autotel-aws/sdk';\n *\n * autoInstrumentAWS();\n * // ... use instrumented clients ...\n *\n * disableAutoInstrumentAWS();\n * // Subsequent operations are not traced\n * ```\n */\nexport function disableAutoInstrumentAWS(): void {\n if (!globalAutoInstrumentEnabled || !originalSmithyClientSend) {\n return;\n }\n\n \n let SmithyClient: any;\n try {\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n SmithyClient = require('@aws-sdk/smithy-client').Client;\n } catch {\n try {\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n SmithyClient = require('@smithy/smithy-client').Client;\n } catch {\n return;\n }\n }\n\n // Restore original send\n SmithyClient.prototype.send = originalSmithyClientSend;\n originalSmithyClientSend = null;\n globalAutoInstrumentEnabled = false;\n}\n\n/**\n * Check if global auto-instrumentation is enabled\n */\nexport function isAutoInstrumentEnabled(): boolean {\n return globalAutoInstrumentEnabled;\n}\n"],"mappings":";;;;;;;;AA2BA,MAAM,sBAAsB,OAAO,IAAI,0BAA0B;AAGjE,IAAI,8BAA8B;AAGlC,IAAI,2BAA8E;;;;AAKlF,SAAS,eAAe,QAA0B;CAChD,OACE,OAAO,WAAW,YAClB,WAAW,QACV,OAAmC,yBAAyB;AAEjE;;;;AAKA,SAAS,mBAAsB,QAAc;CAC3C,AAAC,OAAmC,uBAAuB;CAC3D,OAAO;AACT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCA,SAAgB,cACd,QACA,QACG;CAEH,IAAI,eAAe,MAAM,GACvB,OAAO;CAIT,OAAO,mBADe,cAAc,QAAQ,QAAQ,OACd,CAAC;AACzC;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,SAAgB,mBAId,aACA,QACiB;CAGjB,OAAO,cAAc,IADF,YAAY,MACL,GAAG,MAAM;AACrC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,SAAgB,kBAAkB,QAAyC;CAEzE,IAAI,6BACF;CAKF,IAAI;CACJ,IAAI;EAGF,yBAAuB,wBAAwB,CAAC,CAAC;CACnD,QAAQ;EAEN,IAAI;GAEF,yBAAuB,uBAAuB,CAAC,CAAC;EAClD,QAAQ;GACN,QAAQ,KACN,8LAEF;GACA;EACF;CACF;CAGA,2BAA2B,aAAa,UAAU;CAGlD,MAAM,eAAe,aAAa,UAAU;CAE5C,aAAa,UAAU,OAAO,SAAS,YAErC,SACA,GAAG,MACe;EAElB,IAAI,eAAe,IAAI,GACrB,OAAO,aAAa,KAAK,MAAM,SAAS,GAAG,IAAI;EAOjD,OAFsB,cAAc,MAAoD,QAAQ,OAE5E,CAAC,CAAS,KAAK,SAAS,GAAG,IAAI;CACrD;CAEA,8BAA8B;AAChC;;;;;;;;;;;;;;;;;;AAmBA,SAAgB,2BAAiC;CAC/C,IAAI,CAAC,+BAA+B,CAAC,0BACnC;CAIF,IAAI;CACJ,IAAI;EAEF,yBAAuB,wBAAwB,CAAC,CAAC;CACnD,QAAQ;EACN,IAAI;GAEF,yBAAuB,uBAAuB,CAAC,CAAC;EAClD,QAAQ;GACN;EACF;CACF;CAGA,aAAa,UAAU,OAAO;CAC9B,2BAA2B;CAC3B,8BAA8B;AAChC;;;;AAKA,SAAgB,0BAAmC;CACjD,OAAO;AACT"}
|
package/dist/sdk.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as isAutoInstrumentEnabled, i as instrumentSDK, n as createTracedClient, r as disableAutoInstrumentAWS, t as autoInstrumentAWS } from "./sdk-
|
|
1
|
+
import { a as isAutoInstrumentEnabled, i as instrumentSDK, n as createTracedClient, r as disableAutoInstrumentAWS, t as autoInstrumentAWS } from "./sdk-C4EzYQRq.js";
|
|
2
2
|
|
|
3
3
|
export { autoInstrumentAWS, createTracedClient, disableAutoInstrumentAWS, instrumentSDK, isAutoInstrumentEnabled };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "autotel-aws",
|
|
3
|
-
"version": "0.13.
|
|
3
|
+
"version": "0.13.22",
|
|
4
4
|
"description": "OpenTelemetry instrumentation for AWS",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": [
|
|
@@ -109,17 +109,17 @@
|
|
|
109
109
|
"author": "Jag Reehal <jag@jagreehal.com> (https://jagreehal.com)",
|
|
110
110
|
"license": "MIT",
|
|
111
111
|
"peerDependencies": {
|
|
112
|
-
"@aws-sdk/client-s3": "^3.
|
|
113
|
-
"@aws-sdk/client-dynamodb": "^3.
|
|
114
|
-
"@aws-sdk/client-sqs": "^3.
|
|
115
|
-
"@aws-sdk/client-sns": "^3.
|
|
116
|
-
"@aws-sdk/client-kinesis": "^3.
|
|
117
|
-
"@aws-sdk/client-sfn": "^3.
|
|
118
|
-
"@aws-sdk/client-lambda": "^3.
|
|
119
|
-
"@aws-sdk/client-eventbridge": "^3.
|
|
120
|
-
"@middy/core": "^7.
|
|
121
|
-
"@smithy/signature-v4": "^5.
|
|
122
|
-
"@aws-sdk/credential-providers": "^3.
|
|
112
|
+
"@aws-sdk/client-s3": "^3.1081.0",
|
|
113
|
+
"@aws-sdk/client-dynamodb": "^3.1081.0",
|
|
114
|
+
"@aws-sdk/client-sqs": "^3.1081.0",
|
|
115
|
+
"@aws-sdk/client-sns": "^3.1081.0",
|
|
116
|
+
"@aws-sdk/client-kinesis": "^3.1081.0",
|
|
117
|
+
"@aws-sdk/client-sfn": "^3.1081.0",
|
|
118
|
+
"@aws-sdk/client-lambda": "^3.1081.0",
|
|
119
|
+
"@aws-sdk/client-eventbridge": "^3.1081.0",
|
|
120
|
+
"@middy/core": "^7.7.0",
|
|
121
|
+
"@smithy/signature-v4": "^5.6.2",
|
|
122
|
+
"@aws-sdk/credential-providers": "^3.1081.0",
|
|
123
123
|
"@aws-crypto/sha256-js": "^5.2.0",
|
|
124
124
|
"@opentelemetry/otlp-transformer": ">=0.218.0",
|
|
125
125
|
"@opentelemetry/sdk-trace-base": ">=2.7.1",
|
|
@@ -185,25 +185,25 @@
|
|
|
185
185
|
"@opentelemetry/semantic-conventions": "^1.41.1",
|
|
186
186
|
"@opentelemetry/propagator-aws-xray": "^2.2.0",
|
|
187
187
|
"@types/aws-lambda": "^8.10.162",
|
|
188
|
-
"autotel": "4.2.
|
|
188
|
+
"autotel": "4.2.4"
|
|
189
189
|
},
|
|
190
190
|
"devDependencies": {
|
|
191
|
-
"@aws-sdk/client-s3": "^3.
|
|
192
|
-
"@aws-sdk/client-dynamodb": "^3.
|
|
193
|
-
"@aws-sdk/client-sqs": "^3.
|
|
194
|
-
"@aws-sdk/client-sns": "^3.
|
|
195
|
-
"@aws-sdk/client-kinesis": "^3.
|
|
196
|
-
"@aws-sdk/client-sfn": "^3.
|
|
197
|
-
"@aws-sdk/client-lambda": "^3.
|
|
198
|
-
"@aws-sdk/client-eventbridge": "^3.
|
|
199
|
-
"@middy/core": "^7.
|
|
200
|
-
"@types/node": "^
|
|
201
|
-
"tsdown": "^0.22.
|
|
191
|
+
"@aws-sdk/client-s3": "^3.1081.0",
|
|
192
|
+
"@aws-sdk/client-dynamodb": "^3.1081.0",
|
|
193
|
+
"@aws-sdk/client-sqs": "^3.1081.0",
|
|
194
|
+
"@aws-sdk/client-sns": "^3.1081.0",
|
|
195
|
+
"@aws-sdk/client-kinesis": "^3.1081.0",
|
|
196
|
+
"@aws-sdk/client-sfn": "^3.1081.0",
|
|
197
|
+
"@aws-sdk/client-lambda": "^3.1081.0",
|
|
198
|
+
"@aws-sdk/client-eventbridge": "^3.1081.0",
|
|
199
|
+
"@middy/core": "^7.7.0",
|
|
200
|
+
"@types/node": "^26.1.0",
|
|
201
|
+
"tsdown": "^0.22.3",
|
|
202
202
|
"typescript": "^6.0.3",
|
|
203
|
-
"vitest": "^4.1.
|
|
203
|
+
"vitest": "^4.1.10",
|
|
204
204
|
"rimraf": "^6.1.3",
|
|
205
|
-
"@smithy/signature-v4": "^5.
|
|
206
|
-
"@aws-sdk/credential-providers": "^3.
|
|
205
|
+
"@smithy/signature-v4": "^5.6.2",
|
|
206
|
+
"@aws-sdk/credential-providers": "^3.1081.0",
|
|
207
207
|
"@aws-crypto/sha256-js": "^5.2.0",
|
|
208
208
|
"@opentelemetry/otlp-transformer": "^0.218.0",
|
|
209
209
|
"@opentelemetry/sdk-trace-base": "^2.7.1",
|