@justanalyticsapp/node 0.2.1 → 0.3.0

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.
Files changed (37) hide show
  1. package/dist/client.d.ts +23 -1
  2. package/dist/client.js +139 -1
  3. package/dist/client.js.map +1 -1
  4. package/dist/integrations/axios-integration.d.ts +53 -0
  5. package/dist/integrations/axios-integration.js +221 -0
  6. package/dist/integrations/axios-integration.js.map +1 -0
  7. package/dist/integrations/drizzle.d.ts +54 -0
  8. package/dist/integrations/drizzle.js +245 -0
  9. package/dist/integrations/drizzle.js.map +1 -0
  10. package/dist/integrations/http.d.ts +3 -1
  11. package/dist/integrations/http.js +12 -1
  12. package/dist/integrations/http.js.map +1 -1
  13. package/dist/integrations/mongodb.d.ts +50 -0
  14. package/dist/integrations/mongodb.js +260 -0
  15. package/dist/integrations/mongodb.js.map +1 -0
  16. package/dist/integrations/mysql.d.ts +56 -0
  17. package/dist/integrations/mysql.js +307 -0
  18. package/dist/integrations/mysql.js.map +1 -0
  19. package/dist/integrations/next.d.ts +41 -0
  20. package/dist/integrations/next.js +204 -0
  21. package/dist/integrations/next.js.map +1 -1
  22. package/dist/integrations/pg.d.ts +31 -3
  23. package/dist/integrations/pg.js +102 -22
  24. package/dist/integrations/pg.js.map +1 -1
  25. package/dist/integrations/postgres-js.d.ts +57 -0
  26. package/dist/integrations/postgres-js.js +311 -0
  27. package/dist/integrations/postgres-js.js.map +1 -0
  28. package/dist/integrations/prisma.d.ts +54 -0
  29. package/dist/integrations/prisma.js +186 -0
  30. package/dist/integrations/prisma.js.map +1 -0
  31. package/dist/integrations/redis.d.ts +6 -0
  32. package/dist/integrations/redis.js +16 -19
  33. package/dist/integrations/redis.js.map +1 -1
  34. package/dist/integrations/upstash-redis.d.ts +43 -0
  35. package/dist/integrations/upstash-redis.js +170 -0
  36. package/dist/integrations/upstash-redis.js.map +1 -0
  37. package/package.json +1 -1
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ /**
3
+ * @file packages/node-sdk/src/integrations/prisma.ts
4
+ * @description Prisma auto-instrumentation integration for the JustAnalytics Node.js SDK.
5
+ *
6
+ * Uses Prisma's `$use` middleware API to intercept all queries and create
7
+ * `db.query` spans with model name, operation, and duration.
8
+ *
9
+ * Also supports Prisma's `$extends` client extensions API (Prisma 4.16+) as a
10
+ * fallback if `$use` is unavailable.
11
+ *
12
+ * Follows the same pattern as other integrations:
13
+ * - Integration class with `enable()`/`disable()` lifecycle methods
14
+ * - Fail-open design: never crashes the host process
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.PrismaIntegration = void 0;
18
+ const span_1 = require("../span");
19
+ const context_1 = require("../context");
20
+ const id_1 = require("../utils/id");
21
+ /**
22
+ * PrismaIntegration patches PrismaClient.prototype._request (internal) or
23
+ * uses $use middleware to intercept all Prisma queries and create db.query spans.
24
+ *
25
+ * Since Prisma's `$use` middleware is per-instance, we patch the constructor
26
+ * to auto-register our middleware on every new PrismaClient instance.
27
+ */
28
+ class PrismaIntegration {
29
+ constructor(serviceName, options, onSpanEnd) {
30
+ this._enabled = false;
31
+ this._instrumentedDriver = null;
32
+ // Store original constructor for restoration
33
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
34
+ this._PrismaClientClass = null;
35
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
36
+ this._originalRequest = null;
37
+ this._serviceName = serviceName;
38
+ this._onSpanEnd = onSpanEnd;
39
+ const opts = options || {};
40
+ this._options = {
41
+ enabled: opts.enabled !== false,
42
+ };
43
+ }
44
+ get instrumentedDriver() {
45
+ return this._instrumentedDriver;
46
+ }
47
+ enable() {
48
+ if (this._enabled)
49
+ return;
50
+ if (!this._options.enabled)
51
+ return;
52
+ try {
53
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
54
+ let prismaClient;
55
+ try {
56
+ prismaClient = require('@prisma/client');
57
+ }
58
+ catch {
59
+ return;
60
+ }
61
+ const PrismaClient = prismaClient.PrismaClient;
62
+ if (!PrismaClient || !PrismaClient.prototype) {
63
+ return;
64
+ }
65
+ this._PrismaClientClass = PrismaClient;
66
+ // Strategy: Patch PrismaClient.prototype._request which is the internal
67
+ // method all operations go through. This avoids per-instance $use.
68
+ const originalRequest = PrismaClient.prototype._request;
69
+ if (typeof originalRequest === 'function') {
70
+ this._originalRequest = originalRequest;
71
+ PrismaClient.prototype._request = this._wrapRequest(originalRequest);
72
+ this._instrumentedDriver = '@prisma/client';
73
+ this._enabled = true;
74
+ return;
75
+ }
76
+ // Fallback: patch _executeRequest (older Prisma versions)
77
+ const originalExecuteRequest = PrismaClient.prototype._executeRequest;
78
+ if (typeof originalExecuteRequest === 'function') {
79
+ this._originalRequest = originalExecuteRequest;
80
+ PrismaClient.prototype._executeRequest = this._wrapRequest(originalExecuteRequest);
81
+ this._instrumentedDriver = '@prisma/client';
82
+ this._enabled = true;
83
+ return;
84
+ }
85
+ // No patchable method found
86
+ }
87
+ catch {
88
+ this._restoreOriginals();
89
+ }
90
+ }
91
+ disable() {
92
+ if (!this._enabled)
93
+ return;
94
+ this._restoreOriginals();
95
+ this._instrumentedDriver = null;
96
+ this._enabled = false;
97
+ }
98
+ /**
99
+ * Wrap PrismaClient.prototype._request to create db.query spans.
100
+ *
101
+ * Prisma's internal _request receives a params object with:
102
+ * - model: string (e.g., 'User', 'Post')
103
+ * - action: string (e.g., 'findMany', 'create', 'update', 'delete')
104
+ * - args: object (query arguments -- NOT captured for security)
105
+ * - dataPath: string[]
106
+ * - clientMethod: string (e.g., 'user.findMany')
107
+ */
108
+ _wrapRequest(original) {
109
+ const integration = this;
110
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
111
+ return function patchedRequest(...args) {
112
+ try {
113
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
114
+ const params = args[0];
115
+ if (!params || typeof params !== 'object') {
116
+ return original.apply(this, args);
117
+ }
118
+ const model = params.model || params.modelName || 'unknown';
119
+ const action = params.action || params.operation || 'unknown';
120
+ const clientMethod = params.clientMethod || `${model}.${action}`;
121
+ const parentSpan = (0, context_1.getActiveSpan)();
122
+ const traceId = parentSpan?.traceId ?? (0, id_1.generateTraceId)();
123
+ const parentSpanId = parentSpan?.id ?? null;
124
+ const operationName = `db.query ${action}`;
125
+ const attributes = {
126
+ 'db.system': 'prisma',
127
+ 'db.operation': action,
128
+ 'db.prisma.model': model,
129
+ 'db.prisma.method': clientMethod,
130
+ 'db.statement': `prisma.${clientMethod}`,
131
+ };
132
+ const span = new span_1.Span({
133
+ operationName,
134
+ serviceName: integration._serviceName,
135
+ kind: 'client',
136
+ traceId,
137
+ parentSpanId,
138
+ attributes,
139
+ });
140
+ try {
141
+ const result = original.apply(this, args);
142
+ if (result && typeof result.then === 'function') {
143
+ return result.then((value) => {
144
+ span.end();
145
+ integration._onSpanEnd(span);
146
+ return value;
147
+ }, (error) => {
148
+ span.setStatus('error', error instanceof Error ? error.message : String(error));
149
+ span.end();
150
+ integration._onSpanEnd(span);
151
+ throw error;
152
+ });
153
+ }
154
+ span.end();
155
+ integration._onSpanEnd(span);
156
+ return result;
157
+ }
158
+ catch (error) {
159
+ span.setStatus('error', error instanceof Error ? error.message : String(error));
160
+ span.end();
161
+ integration._onSpanEnd(span);
162
+ throw error;
163
+ }
164
+ }
165
+ catch {
166
+ return original.apply(this, args);
167
+ }
168
+ };
169
+ }
170
+ _restoreOriginals() {
171
+ if (this._PrismaClientClass && this._originalRequest) {
172
+ // Determine which method was patched
173
+ if (this._PrismaClientClass.prototype._request === undefined) {
174
+ // _executeRequest was patched
175
+ this._PrismaClientClass.prototype._executeRequest = this._originalRequest;
176
+ }
177
+ else {
178
+ this._PrismaClientClass.prototype._request = this._originalRequest;
179
+ }
180
+ this._originalRequest = null;
181
+ this._PrismaClientClass = null;
182
+ }
183
+ }
184
+ }
185
+ exports.PrismaIntegration = PrismaIntegration;
186
+ //# sourceMappingURL=prisma.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prisma.js","sourceRoot":"","sources":["../../src/integrations/prisma.ts"],"names":[],"mappings":"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"}
@@ -95,6 +95,8 @@ export declare class RedisIntegration {
95
95
  private _options;
96
96
  private _serviceName;
97
97
  private _onSpanEnd;
98
+ /** Which driver(s) were actually instrumented (for logging) */
99
+ private _instrumentedDriver;
98
100
  private _originalIoRedisSendCommand;
99
101
  private _ioRedisPrototype;
100
102
  private _originalNodeRedisSendCommand;
@@ -107,6 +109,10 @@ export declare class RedisIntegration {
107
109
  * @param onSpanEnd - Callback invoked when a span ends (enqueues to transport)
108
110
  */
109
111
  constructor(serviceName: string, options: RedisIntegrationOptions | undefined, onSpanEnd: (span: Span) => void);
112
+ /**
113
+ * Get which driver was instrumented, or null if none.
114
+ */
115
+ get instrumentedDriver(): string | null;
110
116
  /**
111
117
  * Activate the integration: load Redis modules and patch prototypes.
112
118
  *
@@ -208,6 +208,8 @@ class RedisIntegration {
208
208
  */
209
209
  constructor(serviceName, options, onSpanEnd) {
210
210
  this._enabled = false;
211
+ /** Which driver(s) were actually instrumented (for logging) */
212
+ this._instrumentedDriver = null;
211
213
  // ioredis originals
212
214
  this._originalIoRedisSendCommand = null;
213
215
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -225,6 +227,12 @@ class RedisIntegration {
225
227
  maxStatementLength: opts.maxStatementLength ?? 512,
226
228
  };
227
229
  }
230
+ /**
231
+ * Get which driver was instrumented, or null if none.
232
+ */
233
+ get instrumentedDriver() {
234
+ return this._instrumentedDriver;
235
+ }
228
236
  /**
229
237
  * Activate the integration: load Redis modules and patch prototypes.
230
238
  *
@@ -240,12 +248,12 @@ class RedisIntegration {
240
248
  if (!this._options.enabled)
241
249
  return;
242
250
  try {
243
- let patchedAny = false;
251
+ const drivers = [];
244
252
  // Attempt to patch ioredis
245
253
  try {
246
254
  this._patchIoRedis();
247
255
  if (this._ioRedisPrototype) {
248
- patchedAny = true;
256
+ drivers.push('ioredis');
249
257
  }
250
258
  }
251
259
  catch {
@@ -255,18 +263,17 @@ class RedisIntegration {
255
263
  try {
256
264
  this._patchNodeRedis();
257
265
  if (this._nodeRedisPrototype) {
258
- patchedAny = true;
266
+ drivers.push('@redis/client');
259
267
  }
260
268
  }
261
269
  catch {
262
270
  // @redis/client not available or patching failed -- silently skip
263
271
  }
264
- if (!patchedAny) {
265
- if (typeof console !== 'undefined') {
266
- console.debug('[JustAnalytics] Neither ioredis nor @redis/client found. Skipping Redis auto-instrumentation.');
267
- }
272
+ if (drivers.length === 0) {
273
+ // Neither found - no error, caller handles logging
268
274
  return;
269
275
  }
276
+ this._instrumentedDriver = drivers.join(', ');
270
277
  this._enabled = true;
271
278
  }
272
279
  catch (error) {
@@ -286,6 +293,7 @@ class RedisIntegration {
286
293
  if (!this._enabled)
287
294
  return;
288
295
  this._restoreOriginals();
296
+ this._instrumentedDriver = null;
289
297
  this._enabled = false;
290
298
  }
291
299
  /**
@@ -303,16 +311,10 @@ class RedisIntegration {
303
311
  }
304
312
  catch {
305
313
  // ioredis module is not installed -- silently skip
306
- if (typeof console !== 'undefined') {
307
- console.debug('[JustAnalytics] ioredis module not found. Skipping ioredis auto-instrumentation.');
308
- }
309
314
  return;
310
315
  }
311
316
  const RedisClass = ioredis.default || ioredis;
312
317
  if (!RedisClass || !RedisClass.prototype) {
313
- if (typeof console !== 'undefined') {
314
- console.debug('[JustAnalytics] ioredis.Redis prototype not found. Skipping ioredis auto-instrumentation.');
315
- }
316
318
  return;
317
319
  }
318
320
  // Store references for restoration
@@ -335,9 +337,6 @@ class RedisIntegration {
335
337
  }
336
338
  catch {
337
339
  // @redis/client module is not installed -- silently skip
338
- if (typeof console !== 'undefined') {
339
- console.debug('[JustAnalytics] @redis/client module not found. Skipping node-redis auto-instrumentation.');
340
- }
341
340
  return;
342
341
  }
343
342
  // node-redis v4+ exposes a default Commander or client class
@@ -356,9 +355,7 @@ class RedisIntegration {
356
355
  nodeRedis.default.prototype.sendCommand = this._wrapNodeRedisSendCommand(this._originalNodeRedisSendCommand);
357
356
  return;
358
357
  }
359
- if (typeof console !== 'undefined') {
360
- console.debug('[JustAnalytics] @redis/client sendCommand method not found. Skipping node-redis auto-instrumentation.');
361
- }
358
+ // sendCommand method not found on @redis/client -- silently skip
362
359
  }
363
360
  /**
364
361
  * Restore all patched functions to their originals.
@@ -1 +1 @@
1
- {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../src/integrations/redis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../src/integrations/redis.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * @file packages/node-sdk/src/integrations/upstash-redis.ts
3
+ * @description Upstash Redis auto-instrumentation integration for the JustAnalytics Node.js SDK.
4
+ *
5
+ * Patches the `@upstash/redis` Redis class to auto-create `cache` spans
6
+ * for all Redis commands. Upstash Redis uses an HTTP-based transport, so
7
+ * it's commonly used in serverless environments (Vercel, Cloudflare Workers).
8
+ *
9
+ * Follows the same pattern as other integrations:
10
+ * - Integration class with `enable()`/`disable()` lifecycle methods
11
+ * - Fail-open design: never crashes the host process
12
+ *
13
+ * SECURITY: Redis values are NEVER captured. Only command name + key(s).
14
+ */
15
+ import { Span } from '../span';
16
+ /**
17
+ * Configuration for the Upstash Redis auto-instrumentation integration.
18
+ */
19
+ export interface UpstashRedisIntegrationOptions {
20
+ /** Enable/disable the integration (default: true) */
21
+ enabled?: boolean;
22
+ /** Maximum character length for the db.statement attribute (default: 512) */
23
+ maxStatementLength?: number;
24
+ }
25
+ /**
26
+ * UpstashRedisIntegration patches the @upstash/redis Redis class prototype
27
+ * to auto-create cache spans for all Redis commands.
28
+ */
29
+ export declare class UpstashRedisIntegration {
30
+ private _enabled;
31
+ private _options;
32
+ private _serviceName;
33
+ private _onSpanEnd;
34
+ private _instrumentedDriver;
35
+ private _redisProto;
36
+ private _originals;
37
+ constructor(serviceName: string, options: UpstashRedisIntegrationOptions | undefined, onSpanEnd: (span: Span) => void);
38
+ get instrumentedDriver(): string | null;
39
+ enable(): void;
40
+ disable(): void;
41
+ private _wrapCommand;
42
+ private _restoreOriginals;
43
+ }
@@ -0,0 +1,170 @@
1
+ "use strict";
2
+ /**
3
+ * @file packages/node-sdk/src/integrations/upstash-redis.ts
4
+ * @description Upstash Redis auto-instrumentation integration for the JustAnalytics Node.js SDK.
5
+ *
6
+ * Patches the `@upstash/redis` Redis class to auto-create `cache` spans
7
+ * for all Redis commands. Upstash Redis uses an HTTP-based transport, so
8
+ * it's commonly used in serverless environments (Vercel, Cloudflare Workers).
9
+ *
10
+ * Follows the same pattern as other integrations:
11
+ * - Integration class with `enable()`/`disable()` lifecycle methods
12
+ * - Fail-open design: never crashes the host process
13
+ *
14
+ * SECURITY: Redis values are NEVER captured. Only command name + key(s).
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.UpstashRedisIntegration = void 0;
18
+ const span_1 = require("../span");
19
+ const context_1 = require("../context");
20
+ const id_1 = require("../utils/id");
21
+ const redis_1 = require("./redis");
22
+ /** Common Redis commands used by @upstash/redis */
23
+ const UPSTASH_COMMANDS = [
24
+ 'get', 'set', 'del', 'exists', 'expire', 'ttl', 'incr', 'decr',
25
+ 'hget', 'hset', 'hdel', 'hgetall', 'hmget', 'hmset',
26
+ 'lpush', 'rpush', 'lpop', 'rpop', 'lrange', 'llen',
27
+ 'sadd', 'srem', 'smembers', 'sismember', 'scard',
28
+ 'zadd', 'zrem', 'zrange', 'zrangebyscore', 'zscore', 'zcard',
29
+ 'mget', 'mset', 'append', 'strlen',
30
+ 'setex', 'psetex', 'setnx', 'getset',
31
+ 'publish', 'subscribe',
32
+ 'eval', 'evalsha',
33
+ 'json', 'scan', 'hscan', 'sscan', 'zscan',
34
+ 'ping', 'dbsize', 'flushdb', 'flushall',
35
+ 'incrby', 'decrby', 'incrbyfloat',
36
+ ];
37
+ /**
38
+ * UpstashRedisIntegration patches the @upstash/redis Redis class prototype
39
+ * to auto-create cache spans for all Redis commands.
40
+ */
41
+ class UpstashRedisIntegration {
42
+ constructor(serviceName, options, onSpanEnd) {
43
+ this._enabled = false;
44
+ this._instrumentedDriver = null;
45
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
46
+ this._redisProto = null;
47
+ this._originals = new Map();
48
+ this._serviceName = serviceName;
49
+ this._onSpanEnd = onSpanEnd;
50
+ const opts = options || {};
51
+ this._options = {
52
+ enabled: opts.enabled !== false,
53
+ maxStatementLength: opts.maxStatementLength ?? 512,
54
+ };
55
+ }
56
+ get instrumentedDriver() {
57
+ return this._instrumentedDriver;
58
+ }
59
+ enable() {
60
+ if (this._enabled)
61
+ return;
62
+ if (!this._options.enabled)
63
+ return;
64
+ try {
65
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
66
+ let upstashRedis;
67
+ try {
68
+ upstashRedis = require('@upstash/redis');
69
+ }
70
+ catch {
71
+ return;
72
+ }
73
+ const Redis = upstashRedis.Redis;
74
+ if (!Redis || !Redis.prototype) {
75
+ return;
76
+ }
77
+ this._redisProto = Redis.prototype;
78
+ let patchedCount = 0;
79
+ for (const cmd of UPSTASH_COMMANDS) {
80
+ const original = Redis.prototype[cmd];
81
+ if (typeof original !== 'function')
82
+ continue;
83
+ this._originals.set(cmd, original);
84
+ Redis.prototype[cmd] = this._wrapCommand(original, cmd);
85
+ patchedCount++;
86
+ }
87
+ if (patchedCount === 0)
88
+ return;
89
+ this._instrumentedDriver = '@upstash/redis';
90
+ this._enabled = true;
91
+ }
92
+ catch {
93
+ this._restoreOriginals();
94
+ }
95
+ }
96
+ disable() {
97
+ if (!this._enabled)
98
+ return;
99
+ this._restoreOriginals();
100
+ this._instrumentedDriver = null;
101
+ this._enabled = false;
102
+ }
103
+ _wrapCommand(original, command) {
104
+ const integration = this;
105
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
106
+ return function patchedCommand(...args) {
107
+ try {
108
+ const parentSpan = (0, context_1.getActiveSpan)();
109
+ const traceId = parentSpan?.traceId ?? (0, id_1.generateTraceId)();
110
+ const parentSpanId = parentSpan?.id ?? null;
111
+ const upperCommand = command.toUpperCase();
112
+ const statement = (0, redis_1.formatRedisStatement)(upperCommand, args, integration._options.maxStatementLength);
113
+ const operationName = `cache ${upperCommand}`;
114
+ const attributes = {
115
+ 'db.system': 'redis',
116
+ 'db.statement': statement,
117
+ 'db.operation': upperCommand,
118
+ 'db.driver': '@upstash/redis',
119
+ };
120
+ const span = new span_1.Span({
121
+ operationName,
122
+ serviceName: integration._serviceName,
123
+ kind: 'client',
124
+ traceId,
125
+ parentSpanId,
126
+ attributes,
127
+ });
128
+ try {
129
+ const result = original.apply(this, args);
130
+ // @upstash/redis methods return Promises (HTTP-based)
131
+ if (result && typeof result.then === 'function') {
132
+ return result.then((value) => {
133
+ span.end();
134
+ integration._onSpanEnd(span);
135
+ return value;
136
+ }, (error) => {
137
+ span.setStatus('error', error instanceof Error ? error.message : String(error));
138
+ span.end();
139
+ integration._onSpanEnd(span);
140
+ throw error;
141
+ });
142
+ }
143
+ span.end();
144
+ integration._onSpanEnd(span);
145
+ return result;
146
+ }
147
+ catch (error) {
148
+ span.setStatus('error', error instanceof Error ? error.message : String(error));
149
+ span.end();
150
+ integration._onSpanEnd(span);
151
+ throw error;
152
+ }
153
+ }
154
+ catch {
155
+ return original.apply(this, args);
156
+ }
157
+ };
158
+ }
159
+ _restoreOriginals() {
160
+ if (this._redisProto) {
161
+ for (const [cmd, original] of this._originals) {
162
+ this._redisProto[cmd] = original;
163
+ }
164
+ this._originals.clear();
165
+ this._redisProto = null;
166
+ }
167
+ }
168
+ }
169
+ exports.UpstashRedisIntegration = UpstashRedisIntegration;
170
+ //# sourceMappingURL=upstash-redis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upstash-redis.js","sourceRoot":"","sources":["../../src/integrations/upstash-redis.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@justanalyticsapp/node",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "JustAnalytics Node.js SDK for distributed tracing and observability",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",