@moostjs/otel 0.6.9 → 0.6.10

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.cjs CHANGED
@@ -1,30 +1,8 @@
1
- //#region rolldown:runtime
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __copyProps = (to, from, except, desc) => {
9
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key$1; i < n; i++) {
10
- key$1 = keys[i];
11
- if (!__hasOwnProp.call(to, key$1) && key$1 !== except) __defProp(to, key$1, {
12
- get: ((k) => from[k]).bind(null, key$1),
13
- enumerable: !(desc = __getOwnPropDesc(from, key$1)) || desc.enumerable
14
- });
15
- }
16
- return to;
17
- };
18
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
19
- value: mod,
20
- enumerable: true
21
- }) : target, mod));
22
-
23
- //#endregion
24
- const __opentelemetry_api = __toESM(require("@opentelemetry/api"));
25
- const moost = __toESM(require("moost"));
26
- const __moostjs_event_http = __toESM(require("@moostjs/event-http"));
27
- const __opentelemetry_sdk_trace_base = __toESM(require("@opentelemetry/sdk-trace-base"));
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+ let _opentelemetry_api = require("@opentelemetry/api");
3
+ let moost = require("moost");
4
+ let _moostjs_event_http = require("@moostjs/event-http");
5
+ let _opentelemetry_sdk_trace_base = require("@opentelemetry/sdk-trace-base");
28
6
 
29
7
  //#region packages/otel/src/context.ts
30
8
  /** Event context key storing the root OpenTelemetry span. */ const otelSpanKey = (0, moost.key)("otel.span");
@@ -64,7 +42,7 @@ const spanStack = [];
64
42
  return {};
65
43
  };
66
44
  const pushSpan = (span) => {
67
- const activeSpan = __opentelemetry_api.trace.getActiveSpan();
45
+ const activeSpan = _opentelemetry_api.trace.getActiveSpan();
68
46
  if (activeSpan) {
69
47
  const origEnd = activeSpan.end;
70
48
  Object.assign(activeSpan, { end: (t) => {
@@ -75,18 +53,17 @@ const spanStack = [];
75
53
  } });
76
54
  spanStack.push(activeSpan);
77
55
  }
78
- __opentelemetry_api.trace.setSpan(__opentelemetry_api.context.active(), span);
56
+ _opentelemetry_api.trace.setSpan(_opentelemetry_api.context.active(), span);
79
57
  };
80
58
  const popSpan = () => {
81
59
  const span = spanStack.pop();
82
- if (span) __opentelemetry_api.trace.setSpan(__opentelemetry_api.context.active(), span);
60
+ if (span) _opentelemetry_api.trace.setSpan(_opentelemetry_api.context.active(), span);
83
61
  };
84
62
  return {
85
- trace: __opentelemetry_api.trace,
63
+ trace: _opentelemetry_api.trace,
86
64
  withChildSpan: (name, cb, opts) => {
87
- const tracer$1 = __opentelemetry_api.trace.getTracer("moost-tracer");
88
- const span = tracer$1.startSpan(name, opts);
89
- return () => __opentelemetry_api.context.with(__opentelemetry_api.trace.setSpan(__opentelemetry_api.context.active(), span), cb);
65
+ const span = _opentelemetry_api.trace.getTracer("moost-tracer").startSpan(name, opts);
66
+ return () => _opentelemetry_api.context.with(_opentelemetry_api.trace.setSpan(_opentelemetry_api.context.active(), span), cb);
90
67
  },
91
68
  getSpan,
92
69
  getSpanContext,
@@ -98,7 +75,7 @@ const spanStack = [];
98
75
  };
99
76
  }
100
77
  /** Returns the OpenTelemetry `trace` API for creating tracers and spans. */ function useTrace() {
101
- return __opentelemetry_api.trace;
78
+ return _opentelemetry_api.trace;
102
79
  }
103
80
  /** Returns the root span for the current event, or `undefined` if no span is active. */ function useSpan() {
104
81
  return useOtelContext().getSpan();
@@ -119,13 +96,10 @@ const spanStack = [];
119
96
  //#region packages/otel/src/metrics.ts
120
97
  let moostMetrics;
121
98
  function getMoostMetrics() {
122
- if (!moostMetrics) {
123
- const meter = __opentelemetry_api.metrics.getMeter("moost-meter");
124
- moostMetrics = { moostEventDuration: meter.createHistogram("moost.event.duration", {
125
- description: "Moost Event Duration Histogram",
126
- unit: "ms"
127
- }) };
128
- }
99
+ if (!moostMetrics) moostMetrics = { moostEventDuration: _opentelemetry_api.metrics.getMeter("moost-meter").createHistogram("moost.event.duration", {
100
+ description: "Moost Event Duration Histogram",
101
+ unit: "ms"
102
+ }) };
129
103
  return moostMetrics;
130
104
  }
131
105
 
@@ -143,20 +117,20 @@ function getMoostMetrics() {
143
117
  * @returns {T} The result of the callback function.
144
118
  * @throws {Error} Will throw an error if the callback function throws.
145
119
  */ function withSpan(span, cb, postProcess) {
146
- const _span = typeof span.name === "string" && !span.spanContext ? __opentelemetry_api.trace.getTracer("default").startSpan(span.name, span.options) : span;
120
+ const _span = typeof span.name === "string" && !span.spanContext ? _opentelemetry_api.trace.getTracer("default").startSpan(span.name, span.options) : span;
147
121
  let result = void 0;
148
122
  const finalizeSpan = (e, r) => {
149
123
  if (e) {
150
124
  _span.recordException(e);
151
125
  _span.setStatus({
152
- code: __opentelemetry_api.SpanStatusCode.ERROR,
126
+ code: _opentelemetry_api.SpanStatusCode.ERROR,
153
127
  message: e.message || "Unknown Error"
154
128
  });
155
129
  }
156
130
  if (postProcess) postProcess(_span, e, r);
157
131
  else _span.end();
158
132
  };
159
- __opentelemetry_api.context.with(__opentelemetry_api.trace.setSpan(__opentelemetry_api.context.active(), _span), () => {
133
+ _opentelemetry_api.context.with(_opentelemetry_api.trace.setSpan(_opentelemetry_api.context.active(), _span), () => {
160
134
  try {
161
135
  result = cb();
162
136
  } catch (error) {
@@ -176,17 +150,17 @@ function getMoostMetrics() {
176
150
 
177
151
  //#endregion
178
152
  //#region packages/otel/src/span-injector.ts
179
- function _define_property(obj, key$1, value) {
180
- if (key$1 in obj) Object.defineProperty(obj, key$1, {
153
+ function _define_property(obj, key, value) {
154
+ if (key in obj) Object.defineProperty(obj, key, {
181
155
  value,
182
156
  enumerable: true,
183
157
  configurable: true,
184
158
  writable: true
185
159
  });
186
- else obj[key$1] = value;
160
+ else obj[key] = value;
187
161
  return obj;
188
162
  }
189
- const tracer = __opentelemetry_api.trace.getTracer("moost-tracer");
163
+ const tracer = _opentelemetry_api.trace.getTracer("moost-tracer");
190
164
  /** Context injector that wraps Moost lifecycle hooks with OpenTelemetry spans and records metrics. */ var SpanInjector = class extends moost.ContextInjector {
191
165
  with(name, attributes, cb) {
192
166
  const fn = typeof attributes === "function" ? attributes : cb;
@@ -195,7 +169,7 @@ const tracer = __opentelemetry_api.trace.getTracer("moost-tracer");
195
169
  else if (name !== "Event:start") {
196
170
  if (this.getIgnoreSpan()) return fn();
197
171
  const span = tracer.startSpan(name, {
198
- kind: __opentelemetry_api.SpanKind.INTERNAL,
172
+ kind: _opentelemetry_api.SpanKind.INTERNAL,
199
173
  attributes: attrs
200
174
  });
201
175
  return this.withSpan(span, fn, {
@@ -224,7 +198,7 @@ const tracer = __opentelemetry_api.trace.getTracer("moost-tracer");
224
198
  startEvent(eventType, cb) {
225
199
  if (eventType === "init") return cb();
226
200
  const { registerSpan } = useOtelContext();
227
- let span = __opentelemetry_api.trace.getActiveSpan();
201
+ let span = _opentelemetry_api.trace.getActiveSpan();
228
202
  if (eventType === "HTTP") this.patchRsponse();
229
203
  else span = tracer.startSpan(`${eventType} Event`);
230
204
  if (span) {
@@ -276,8 +250,7 @@ const tracer = __opentelemetry_api.trace.getTracer("moost-tracer");
276
250
  const chm = this.getControllerHandlerMeta();
277
251
  const span = getSpan();
278
252
  if (span) {
279
- const eventType = this.getEventType();
280
- if (eventType === "HTTP") {
253
+ if (this.getEventType() === "HTTP") {
281
254
  const req = this.getRequest();
282
255
  span.updateName(`${req?.method || ""} ${req?.url}`);
283
256
  }
@@ -319,9 +292,8 @@ const tracer = __opentelemetry_api.trace.getTracer("moost-tracer");
319
292
  const route = ctx.has(otelRouteKey) ? ctx.get(otelRouteKey) : void 0;
320
293
  const startTime = ctx.has(otelStartTimeKey) ? ctx.get(otelStartTimeKey) : void 0;
321
294
  const duration = Date.now() - (startTime || Date.now() - 1);
322
- const customAttrs = ctx.has(customMetricAttrsKey) ? ctx.get(customMetricAttrsKey) : {};
323
295
  const attrs = {
324
- ...customAttrs,
296
+ ...ctx.has(customMetricAttrsKey) ? ctx.get(customMetricAttrsKey) : {},
325
297
  route,
326
298
  "moost.event_type": a["moost.event_type"],
327
299
  "moost.is_error": error ? 1 : 0
@@ -335,17 +307,16 @@ const tracer = __opentelemetry_api.trace.getTracer("moost-tracer");
335
307
  }
336
308
  getRequest() {
337
309
  try {
338
- return (0, moost.current)().get(__moostjs_event_http.httpKind.keys.req);
310
+ return (0, moost.current)().get(_moostjs_event_http.httpKind.keys.req);
339
311
  } catch {
340
- return void 0;
312
+ return;
341
313
  }
342
314
  }
343
315
  getResponse() {
344
316
  try {
345
- const response = (0, moost.current)().get(__moostjs_event_http.httpKind.keys.response);
346
- return response?.getRawRes(true);
317
+ return (0, moost.current)().get(_moostjs_event_http.httpKind.keys.response)?.getRawRes(true);
347
318
  } catch {
348
- return void 0;
319
+ return;
349
320
  }
350
321
  }
351
322
  constructor(...args) {
@@ -393,7 +364,7 @@ const mate = getOtelMate();
393
364
  /**
394
365
  * Batch span processor that filters out spans marked with `@OtelIgnoreSpan()`.
395
366
  * Drop-in replacement for `BatchSpanProcessor` from `@opentelemetry/sdk-trace-base`.
396
- */ var MoostBatchSpanProcessor = class extends __opentelemetry_sdk_trace_base.BatchSpanProcessor {
367
+ */ var MoostBatchSpanProcessor = class extends _opentelemetry_sdk_trace_base.BatchSpanProcessor {
397
368
  onEnd(span) {
398
369
  if (shouldSpanBeIgnored(span)) return;
399
370
  super.onEnd(span);
@@ -405,7 +376,7 @@ const mate = getOtelMate();
405
376
  /**
406
377
  * Simple span processor that filters out spans marked with `@OtelIgnoreSpan()`.
407
378
  * Drop-in replacement for `SimpleSpanProcessor` from `@opentelemetry/sdk-trace-base`.
408
- */ var MoostSimpleSpanProcessor = class extends __opentelemetry_sdk_trace_base.SimpleSpanProcessor {
379
+ */ var MoostSimpleSpanProcessor = class extends _opentelemetry_sdk_trace_base.SimpleSpanProcessor {
409
380
  onEnd(span) {
410
381
  if (shouldSpanBeIgnored(span)) return;
411
382
  super.onEnd(span);
package/dist/index.mjs CHANGED
@@ -61,8 +61,7 @@ const spanStack = [];
61
61
  return {
62
62
  trace,
63
63
  withChildSpan: (name, cb, opts) => {
64
- const tracer$1 = trace.getTracer("moost-tracer");
65
- const span = tracer$1.startSpan(name, opts);
64
+ const span = trace.getTracer("moost-tracer").startSpan(name, opts);
66
65
  return () => context.with(trace.setSpan(context.active(), span), cb);
67
66
  },
68
67
  getSpan,
@@ -96,13 +95,10 @@ const spanStack = [];
96
95
  //#region packages/otel/src/metrics.ts
97
96
  let moostMetrics;
98
97
  function getMoostMetrics() {
99
- if (!moostMetrics) {
100
- const meter = metrics.getMeter("moost-meter");
101
- moostMetrics = { moostEventDuration: meter.createHistogram("moost.event.duration", {
102
- description: "Moost Event Duration Histogram",
103
- unit: "ms"
104
- }) };
105
- }
98
+ if (!moostMetrics) moostMetrics = { moostEventDuration: metrics.getMeter("moost-meter").createHistogram("moost.event.duration", {
99
+ description: "Moost Event Duration Histogram",
100
+ unit: "ms"
101
+ }) };
106
102
  return moostMetrics;
107
103
  }
108
104
 
@@ -153,14 +149,14 @@ function getMoostMetrics() {
153
149
 
154
150
  //#endregion
155
151
  //#region packages/otel/src/span-injector.ts
156
- function _define_property(obj, key$1, value) {
157
- if (key$1 in obj) Object.defineProperty(obj, key$1, {
152
+ function _define_property(obj, key, value) {
153
+ if (key in obj) Object.defineProperty(obj, key, {
158
154
  value,
159
155
  enumerable: true,
160
156
  configurable: true,
161
157
  writable: true
162
158
  });
163
- else obj[key$1] = value;
159
+ else obj[key] = value;
164
160
  return obj;
165
161
  }
166
162
  const tracer = trace.getTracer("moost-tracer");
@@ -253,8 +249,7 @@ const tracer = trace.getTracer("moost-tracer");
253
249
  const chm = this.getControllerHandlerMeta();
254
250
  const span = getSpan();
255
251
  if (span) {
256
- const eventType = this.getEventType();
257
- if (eventType === "HTTP") {
252
+ if (this.getEventType() === "HTTP") {
258
253
  const req = this.getRequest();
259
254
  span.updateName(`${req?.method || ""} ${req?.url}`);
260
255
  }
@@ -296,9 +291,8 @@ const tracer = trace.getTracer("moost-tracer");
296
291
  const route = ctx.has(otelRouteKey) ? ctx.get(otelRouteKey) : void 0;
297
292
  const startTime = ctx.has(otelStartTimeKey) ? ctx.get(otelStartTimeKey) : void 0;
298
293
  const duration = Date.now() - (startTime || Date.now() - 1);
299
- const customAttrs = ctx.has(customMetricAttrsKey) ? ctx.get(customMetricAttrsKey) : {};
300
294
  const attrs = {
301
- ...customAttrs,
295
+ ...ctx.has(customMetricAttrsKey) ? ctx.get(customMetricAttrsKey) : {},
302
296
  route,
303
297
  "moost.event_type": a["moost.event_type"],
304
298
  "moost.is_error": error ? 1 : 0
@@ -314,15 +308,14 @@ const tracer = trace.getTracer("moost-tracer");
314
308
  try {
315
309
  return current().get(httpKind.keys.req);
316
310
  } catch {
317
- return void 0;
311
+ return;
318
312
  }
319
313
  }
320
314
  getResponse() {
321
315
  try {
322
- const response = current().get(httpKind.keys.response);
323
- return response?.getRawRes(true);
316
+ return current().get(httpKind.keys.response)?.getRawRes(true);
324
317
  } catch {
325
- return void 0;
318
+ return;
326
319
  }
327
320
  }
328
321
  constructor(...args) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moostjs/otel",
3
- "version": "0.6.9",
3
+ "version": "0.6.10",
4
4
  "description": "@moostjs/otel",
5
5
  "keywords": [
6
6
  "composables",
@@ -45,9 +45,9 @@
45
45
  "vitest": "3.2.4"
46
46
  },
47
47
  "peerDependencies": {
48
- "@wooksjs/event-core": "^0.7.11",
49
- "@moostjs/event-http": "^0.6.9",
50
- "moost": "^0.6.9"
48
+ "@wooksjs/event-core": "^0.7.12",
49
+ "@moostjs/event-http": "^0.6.10",
50
+ "moost": "^0.6.10"
51
51
  },
52
52
  "scripts": {
53
53
  "pub": "pnpm publish --access public",