@blaxel/telemetry 0.2.17-dev.115 → 0.2.17-dev.117

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 (2) hide show
  1. package/dist/telemetry.js +50 -0
  2. package/package.json +2 -2
package/dist/telemetry.js CHANGED
@@ -192,6 +192,7 @@ class TelemetryManager {
192
192
  });
193
193
  }
194
194
  instrumentApp() {
195
+ core_1.logger.debug("Available propagation fields before setup:", api_1.propagation.fields());
195
196
  core_1.telemetryRegistry.registerProvider(new telemetry_provider_1.OtelTelemetryProvider());
196
197
  const httpInstrumentation = new instrumentation_http_1.HttpInstrumentation({
197
198
  requireParentforOutgoingSpans: true,
@@ -211,6 +212,51 @@ class TelemetryManager {
211
212
  "x-blaxel-workspace": headers["x-blaxel-workspace"],
212
213
  };
213
214
  core_1.logger.debug("Trace context headers:", JSON.stringify(traceHeaders));
215
+ // Manual trace context extraction for debugging
216
+ if (headers.traceparent) {
217
+ try {
218
+ const traceparentValue = Array.isArray(headers.traceparent)
219
+ ? headers.traceparent[0]
220
+ : headers.traceparent;
221
+ core_1.logger.debug("Manual traceparent parsing:", traceparentValue);
222
+ // Try to manually parse the traceparent header
223
+ const parts = traceparentValue.split("-");
224
+ if (parts.length === 4) {
225
+ core_1.logger.debug("Traceparent parts:", {
226
+ version: parts[0],
227
+ traceId: parts[1],
228
+ spanId: parts[2],
229
+ flags: parts[3],
230
+ });
231
+ // Check if this looks like a valid traceparent
232
+ if (parts[1] !== "00000000000000000000000000000000" &&
233
+ parts[2] !== "0000000000000000") {
234
+ core_1.logger.debug("Traceparent appears valid - extraction should work");
235
+ }
236
+ else {
237
+ core_1.logger.debug("Traceparent contains invalid IDs");
238
+ }
239
+ }
240
+ // Extract trace context manually to see what should be extracted
241
+ const extractedContext = api_1.propagation.extract(api_1.context.active(), headers);
242
+ const extractedSpan = api_1.trace.getSpan(extractedContext);
243
+ if (extractedSpan) {
244
+ const extractedSpanContext = extractedSpan.spanContext();
245
+ core_1.logger.debug("Manual context extraction result:", JSON.stringify({
246
+ traceId: extractedSpanContext.traceId,
247
+ spanId: extractedSpanContext.spanId,
248
+ traceFlags: extractedSpanContext.traceFlags,
249
+ }));
250
+ }
251
+ else {
252
+ core_1.logger.debug("Manual context extraction failed - no span found");
253
+ core_1.logger.debug("Available propagation fields:", api_1.propagation.fields());
254
+ }
255
+ }
256
+ catch (error) {
257
+ core_1.logger.debug("Manual context extraction error:", error);
258
+ }
259
+ }
214
260
  // Log the span context that was created from the incoming request
215
261
  const spanContext = span.spanContext();
216
262
  core_1.logger.debug("HTTP span context:", JSON.stringify({
@@ -234,6 +280,8 @@ class TelemetryManager {
234
280
  });
235
281
  }
236
282
  setExporters() {
283
+ // Log current propagators for debugging
284
+ core_1.logger.debug("Current propagators:", api_1.propagation.fields());
237
285
  const resource = new BlaxelResource(this.resourceAttributes);
238
286
  const logExporter = this.getLogExporter();
239
287
  this.loggerProvider = new sdk_logs_1.LoggerProvider({
@@ -256,6 +304,8 @@ class TelemetryManager {
256
304
  ],
257
305
  });
258
306
  this.nodeTracerProvider.register();
307
+ // Ensure W3C trace context propagation is working
308
+ core_1.logger.debug("Propagation fields after tracer registration:", api_1.propagation.fields());
259
309
  const metricExporter = this.getMetricExporter();
260
310
  this.meterProvider = new sdk_metrics_1.MeterProvider({
261
311
  resource,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blaxel/telemetry",
3
- "version": "0.2.17-dev.115",
3
+ "version": "0.2.17-dev.117",
4
4
  "description": "Blaxel SDK for TypeScript",
5
5
  "license": "MIT",
6
6
  "author": "Blaxel, INC (https://blaxel.ai)",
@@ -71,7 +71,7 @@
71
71
  "@opentelemetry/sdk-trace-base": "^2.0.0",
72
72
  "@opentelemetry/sdk-trace-node": "^2.0.0",
73
73
  "ai": "^4.3.13",
74
- "@blaxel/core": "0.2.17-dev.115"
74
+ "@blaxel/core": "0.2.17-dev.117"
75
75
  },
76
76
  "devDependencies": {
77
77
  "@eslint/js": "^9.26.0",