@atrim/instrument-node 0.7.1-dev.14fdea7.20260109021705 → 0.7.1-dev.764c183.20260110203528

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atrim/instrument-node",
3
- "version": "0.7.1-dev.14fdea7.20260109021705",
3
+ "version": "0.7.1-dev.764c183.20260110203528",
4
4
  "description": "OpenTelemetry instrumentation for Node.js with centralized YAML configuration",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -66,6 +66,7 @@
66
66
  "@opentelemetry/sdk-node": "^0.208.0",
67
67
  "@opentelemetry/sdk-trace-base": "^2.2.0",
68
68
  "@opentelemetry/sdk-trace-node": "^2.2.0",
69
+ "@opentelemetry/sdk-trace-web": "^2.2.0",
69
70
  "@opentelemetry/semantic-conventions": "^1.38.0",
70
71
  "yaml": "^2.3.0",
71
72
  "zod": "^3.22.0"
@@ -113,6 +113,25 @@ var AutoInstrumentationConfigSchema = zod.z.object({
113
113
  // Naming rules (first match wins)
114
114
  rules: zod.z.array(SpanNamingRuleSchema).default([])
115
115
  }).default({}),
116
+ // Span relationship configuration for forked fibers
117
+ // Controls how child fiber spans relate to their parent/forking context
118
+ span_relationships: zod.z.object({
119
+ // Relationship type between forked fiber spans and their parent context
120
+ // - 'parent-child': Use parent-child relationship (default, traditional tracing)
121
+ // Parent span shows child as nested. Works well with most observability tools.
122
+ // - 'span-links': Use span links (semantically correct for async forks per OTel spec)
123
+ // Fibers get independent traces linked to parent. Better for long-running fibers.
124
+ // - 'both': Create parent-child AND add span links
125
+ // Maximum visibility but may create redundant data.
126
+ type: zod.z.enum(["parent-child", "span-links", "both"]).default("parent-child"),
127
+ // Custom attributes to add to span links (only used when type includes links)
128
+ link_attributes: zod.z.object({
129
+ // Link type identifier
130
+ "link.type": zod.z.string().default("fork"),
131
+ // Custom attributes (key-value pairs)
132
+ custom: zod.z.record(zod.z.string()).optional()
133
+ }).optional()
134
+ }).default({}),
116
135
  // Pattern-based filtering
117
136
  filter: zod.z.object({
118
137
  // Only trace spans matching these patterns (empty = trace all)