@superblocksteam/shared 0.9143.0 → 0.9145.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.
@@ -7,6 +7,15 @@ import { Span, Tracer } from '@opentelemetry/api';
7
7
  * @param tracer - The tracer
8
8
  */
9
9
  export declare function traceMethod(className: string, methodName: string, descriptor: PropertyDescriptor, tracer: Tracer): PropertyDescriptor;
10
+ export declare function traceFunction<T>({ name, tracer, fn, parent }: {
11
+ name: string;
12
+ tracer: Tracer;
13
+ fn: (span: Span) => T | Promise<T>;
14
+ parent?: Span;
15
+ }): Promise<T>;
16
+ /**
17
+ * @deprecated Use `traceFunction` instead.
18
+ */
10
19
  export declare function executeTraced<T>(name: string, tracer: Tracer, fn: (span: Span) => Promise<T>, parent?: Span): Promise<T>;
11
20
  export declare function addTracingToMethods(object: object, methods: string[], tracer: Tracer): void;
12
21
  //# sourceMappingURL=methodTracing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"methodTracing.d.ts","sourceRoot":"","sources":["../../src/tracing/methodTracing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,IAAI,EAAS,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE3E;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,kBAAkB,CA8CrI;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAmBxH;AAiBD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,QASpF"}
1
+ {"version":3,"file":"methodTracing.d.ts","sourceRoot":"","sources":["../../src/tracing/methodTracing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,IAAI,EAAS,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE3E;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,kBAAkB,CA8CrI;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,EAC/B,IAAI,EACJ,MAAM,EACN,EAAE,EACF,MAAM,EACP,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,IAAI,CAAC;CACf,GAAG,OAAO,CAAC,CAAC,CAAC,CA+Bb;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAmBxH;AAiBD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,QASpF"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addTracingToMethods = exports.executeTraced = exports.traceMethod = void 0;
3
+ exports.addTracingToMethods = exports.executeTraced = exports.traceFunction = exports.traceMethod = void 0;
4
4
  const api_1 = require("@opentelemetry/api");
5
5
  /**
6
6
  * helper function to wrap a class method with tracing
@@ -55,6 +55,38 @@ function traceMethod(className, methodName, descriptor, tracer) {
55
55
  return descriptor;
56
56
  }
57
57
  exports.traceMethod = traceMethod;
58
+ function traceFunction({ name, tracer, fn, parent }) {
59
+ const parentSpan = parent ?? api_1.trace.getActiveSpan();
60
+ const ctx = parentSpan ? api_1.trace.setSpan(api_1.context.active(), parentSpan) : api_1.context.active();
61
+ return api_1.context.with(ctx, () => tracer.startActiveSpan(name, {}, async (span) => {
62
+ try {
63
+ const result = fn(span);
64
+ if (result instanceof Promise) {
65
+ return result
66
+ .then((res) => {
67
+ span.end();
68
+ return res;
69
+ })
70
+ .catch((err) => {
71
+ span.recordException(err);
72
+ span.end();
73
+ throw err;
74
+ });
75
+ }
76
+ span.end();
77
+ return result;
78
+ }
79
+ catch (err) {
80
+ span.recordException(err);
81
+ span.end();
82
+ throw err;
83
+ }
84
+ }));
85
+ }
86
+ exports.traceFunction = traceFunction;
87
+ /**
88
+ * @deprecated Use `traceFunction` instead.
89
+ */
58
90
  function executeTraced(name, tracer, fn, parent) {
59
91
  const parentSpan = parent ?? api_1.trace.getActiveSpan();
60
92
  if (parentSpan) {
@@ -1 +1 @@
1
- {"version":3,"file":"methodTracing.js","sourceRoot":"","sources":["../../src/tracing/methodTracing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"methodTracing.js","sourceRoot":"","sources":["../../src/tracing/methodTracing.ts"],"names":[],"mappings":";;;AAAA,4CAA2E;AAE3E;;;;;;GAMG;AACH,SAAgB,WAAW,CAAC,SAAiB,EAAE,UAAkB,EAAE,UAA8B,EAAE,MAAc;IAC/G,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;IAExC,8DAA8D;IAC9D,UAAU,CAAC,KAAK,GAAG,UAAU,GAAG,IAAW;QACzC,yFAAyF;QACzF,MAAM,UAAU,GAAG,WAAK,CAAC,aAAa,EAAsB,CAAC;QAC7D,IAAI,GAAY,CAAC;QACjB,IAAI,UAAU,EAAE;YACd,GAAG,GAAG,WAAK,CAAC,OAAO,CAAC,aAAO,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;SACnD;aAAM;YACL,GAAG,GAAG,aAAO,CAAC,MAAM,EAAE,CAAC;SACxB;QAED,+DAA+D;QAC/D,OAAO,aAAO,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;YAC5B,OAAO,MAAM,CAAC,eAAe,CAAC,GAAG,SAAS,IAAI,UAAU,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAC7E,IAAI;oBACF,6DAA6D;oBAC7D,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBAEhD,IAAI,MAAM,YAAY,OAAO,EAAE;wBAC7B,OAAO,MAAM;6BACV,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;4BACZ,IAAI,CAAC,GAAG,EAAE,CAAC;4BACX,OAAO,GAAG,CAAC;wBACb,CAAC,CAAC;6BACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;4BACb,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;4BAC1B,IAAI,CAAC,GAAG,EAAE,CAAC;4BACX,MAAM,GAAG,CAAC;wBACZ,CAAC,CAAC,CAAC;qBACN;oBAED,8DAA8D;oBAC9D,IAAI,CAAC,GAAG,EAAE,CAAC;oBACX,OAAO,MAAM,CAAC;iBACf;gBAAC,OAAO,GAAG,EAAE;oBACZ,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;oBAC1B,IAAI,CAAC,GAAG,EAAE,CAAC;oBACX,MAAM,GAAG,CAAC;iBACX;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,OAAO,UAAU,CAAC;AACpB,CAAC;AA9CD,kCA8CC;AAED,SAAgB,aAAa,CAAI,EAC/B,IAAI,EACJ,MAAM,EACN,EAAE,EACF,MAAM,EAMP;IACC,MAAM,UAAU,GAAG,MAAM,IAAK,WAAK,CAAC,aAAa,EAAuB,CAAC;IACzE,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,WAAK,CAAC,OAAO,CAAC,aAAO,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,aAAO,CAAC,MAAM,EAAE,CAAC;IAExF,OAAO,aAAO,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAC5B,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC9C,IAAI;YACF,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAExB,IAAI,MAAM,YAAY,OAAO,EAAE;gBAC7B,OAAO,MAAM;qBACV,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;oBACZ,IAAI,CAAC,GAAG,EAAE,CAAC;oBACX,OAAO,GAAG,CAAC;gBACb,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;oBAC1B,IAAI,CAAC,GAAG,EAAE,CAAC;oBACX,MAAM,GAAG,CAAC;gBACZ,CAAC,CAAC,CAAC;aACN;YAED,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,OAAO,MAAM,CAAC;SACf;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,MAAM,GAAG,CAAC;SACX;IACH,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AAzCD,sCAyCC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAI,IAAY,EAAE,MAAc,EAAE,EAA8B,EAAE,MAAa;IAC1G,MAAM,UAAU,GAAG,MAAM,IAAK,WAAK,CAAC,aAAa,EAAuB,CAAC;IACzE,IAAI,UAAU,EAAE;QACd,6BAA6B;QAC7B,OAAO,aAAO,CAAC,IAAI,CAAC,WAAK,CAAC,OAAO,CAAC,aAAO,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE;YACpE,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;gBAC3B,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;KACJ;SAAM;QACL,0BAA0B;QAC1B,OAAO,aAAO,CAAC,IAAI,CAAC,aAAO,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE;YACzC,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;gBAC3B,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;KACJ;AACH,CAAC;AAnBD,sCAmBC;AAED,SAAS,cAAc,CAAC,MAAc,EAAE,MAAc;IACpD,IAAI,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAEjD,kEAAkE;IAClE,OAAO,YAAY,EAAE;QACnB,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACzE,IAAI,UAAU,EAAE;YACd,OAAO,UAAU,CAAC,CAAC,8BAA8B;SAClD;QACD,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,8BAA8B;KACnF;IAED,OAAO,SAAS,CAAC,CAAC,gCAAgC;AACpD,CAAC;AAED,SAAgB,mBAAmB,CAAC,MAAc,EAAE,OAAiB,EAAE,MAAc;IACnF,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QACzB,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,UAAU,EAAE;YACxC,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAClD,IAAI,UAAU,EAAE;gBACd,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;aACzG;SACF;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AATD,kDASC"}
@@ -7,6 +7,15 @@ import { Span, Tracer } from '@opentelemetry/api';
7
7
  * @param tracer - The tracer
8
8
  */
9
9
  export declare function traceMethod(className: string, methodName: string, descriptor: PropertyDescriptor, tracer: Tracer): PropertyDescriptor;
10
+ export declare function traceFunction<T>({ name, tracer, fn, parent }: {
11
+ name: string;
12
+ tracer: Tracer;
13
+ fn: (span: Span) => T | Promise<T>;
14
+ parent?: Span;
15
+ }): Promise<T>;
16
+ /**
17
+ * @deprecated Use `traceFunction` instead.
18
+ */
10
19
  export declare function executeTraced<T>(name: string, tracer: Tracer, fn: (span: Span) => Promise<T>, parent?: Span): Promise<T>;
11
20
  export declare function addTracingToMethods(object: object, methods: string[], tracer: Tracer): void;
12
21
  //# sourceMappingURL=methodTracing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"methodTracing.d.ts","sourceRoot":"","sources":["../../src/tracing/methodTracing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,IAAI,EAAS,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE3E;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,kBAAkB,CA8CrI;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAmBxH;AAiBD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,QASpF"}
1
+ {"version":3,"file":"methodTracing.d.ts","sourceRoot":"","sources":["../../src/tracing/methodTracing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,IAAI,EAAS,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE3E;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,GAAG,kBAAkB,CA8CrI;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,EAC/B,IAAI,EACJ,MAAM,EACN,EAAE,EACF,MAAM,EACP,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,IAAI,CAAC;CACf,GAAG,OAAO,CAAC,CAAC,CAAC,CA+Bb;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAmBxH;AAiBD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,QASpF"}
@@ -51,6 +51,37 @@ export function traceMethod(className, methodName, descriptor, tracer) {
51
51
  };
52
52
  return descriptor;
53
53
  }
54
+ export function traceFunction({ name, tracer, fn, parent }) {
55
+ const parentSpan = parent ?? trace.getActiveSpan();
56
+ const ctx = parentSpan ? trace.setSpan(context.active(), parentSpan) : context.active();
57
+ return context.with(ctx, () => tracer.startActiveSpan(name, {}, async (span) => {
58
+ try {
59
+ const result = fn(span);
60
+ if (result instanceof Promise) {
61
+ return result
62
+ .then((res) => {
63
+ span.end();
64
+ return res;
65
+ })
66
+ .catch((err) => {
67
+ span.recordException(err);
68
+ span.end();
69
+ throw err;
70
+ });
71
+ }
72
+ span.end();
73
+ return result;
74
+ }
75
+ catch (err) {
76
+ span.recordException(err);
77
+ span.end();
78
+ throw err;
79
+ }
80
+ }));
81
+ }
82
+ /**
83
+ * @deprecated Use `traceFunction` instead.
84
+ */
54
85
  export function executeTraced(name, tracer, fn, parent) {
55
86
  const parentSpan = parent ?? trace.getActiveSpan();
56
87
  if (parentSpan) {
@@ -1 +1 @@
1
- {"version":3,"file":"methodTracing.js","sourceRoot":"","sources":["../../src/tracing/methodTracing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"methodTracing.js","sourceRoot":"","sources":["../../src/tracing/methodTracing.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@superblocksteam/shared",
3
- "version": "0.9143.0",
3
+ "version": "0.9145.0",
4
4
  "description": "Superblocks Shared Resources",
5
5
  "repository": "https://github.com/superblocksteam/shared.git",
6
6
  "license": "Superblocks Community Software License",
@@ -55,6 +55,52 @@ export function traceMethod(className: string, methodName: string, descriptor: P
55
55
  return descriptor;
56
56
  }
57
57
 
58
+ export function traceFunction<T>({
59
+ name,
60
+ tracer,
61
+ fn,
62
+ parent
63
+ }: {
64
+ name: string;
65
+ tracer: Tracer;
66
+ fn: (span: Span) => T | Promise<T>;
67
+ parent?: Span;
68
+ }): Promise<T> {
69
+ const parentSpan = parent ?? (trace.getActiveSpan() as Span | undefined);
70
+ const ctx = parentSpan ? trace.setSpan(context.active(), parentSpan) : context.active();
71
+
72
+ return context.with(ctx, () =>
73
+ tracer.startActiveSpan(name, {}, async (span) => {
74
+ try {
75
+ const result = fn(span);
76
+
77
+ if (result instanceof Promise) {
78
+ return result
79
+ .then((res) => {
80
+ span.end();
81
+ return res;
82
+ })
83
+ .catch((err) => {
84
+ span.recordException(err);
85
+ span.end();
86
+ throw err;
87
+ });
88
+ }
89
+
90
+ span.end();
91
+ return result;
92
+ } catch (err) {
93
+ span.recordException(err);
94
+ span.end();
95
+ throw err;
96
+ }
97
+ })
98
+ );
99
+ }
100
+
101
+ /**
102
+ * @deprecated Use `traceFunction` instead.
103
+ */
58
104
  export function executeTraced<T>(name: string, tracer: Tracer, fn: (span: Span) => Promise<T>, parent?: Span): Promise<T> {
59
105
  const parentSpan = parent ?? (trace.getActiveSpan() as Span | undefined);
60
106
  if (parentSpan) {