@reactionary/source 0.0.29 → 0.0.30
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/examples/trpc-node/.env.example +1 -1
- package/examples/trpc-node/src/main.ts +1 -5
- package/otel/README.md +0 -1
- package/otel/package.json +0 -8
- package/otel/pnpm-lock.yaml +805 -0
- package/otel/src/index.ts +7 -10
- package/otel/src/sdk.ts +3 -65
- package/package.json +1 -1
- package/trpc/src/index.ts +4 -8
- package/otel/src/config.ts +0 -139
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
# Service identification
|
|
6
6
|
OTEL_SERVICE_NAME=reactionary-trpc-example
|
|
7
7
|
OTEL_SERVICE_VERSION=1.0.0
|
|
8
|
-
DEPLOYMENT_ENVIRONMENT=development
|
|
9
8
|
|
|
10
9
|
# Traces exporter: console | otlp | otlp/http | none
|
|
11
10
|
OTEL_TRACES_EXPORTER=console
|
|
@@ -16,6 +15,7 @@ OTEL_METRICS_EXPORTER=console
|
|
|
16
15
|
# For OTLP exporters (e.g., Honeycomb, Jaeger, Grafana)
|
|
17
16
|
# OTEL_EXPORTER_OTLP_ENDPOINT=https://api.honeycomb.io
|
|
18
17
|
# OTEL_EXPORTER_OTLP_HEADERS=x-honeycomb-team=your-api-key
|
|
18
|
+
# OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf
|
|
19
19
|
|
|
20
20
|
# Or use specific endpoints for traces/metrics
|
|
21
21
|
# OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://api.honeycomb.io/v1/traces
|
|
@@ -54,10 +54,6 @@ app.use(
|
|
|
54
54
|
|
|
55
55
|
const server = app.listen(3000, () => {
|
|
56
56
|
console.log('Server started on http://localhost:3000');
|
|
57
|
-
//
|
|
58
|
-
if (process.env['OTEL_LOG_LEVEL'] === 'debug') {
|
|
59
|
-
console.log('OTEL traces exporter:', process.env['OTEL_TRACES_EXPORTER'] || 'console');
|
|
60
|
-
console.log('OTEL metrics exporter:', process.env['OTEL_METRICS_EXPORTER'] || 'console');
|
|
61
|
-
}
|
|
57
|
+
// OpenTelemetry automatically initializes based on OTEL_* environment variables
|
|
62
58
|
});
|
|
63
59
|
|
package/otel/README.md
CHANGED
|
@@ -43,7 +43,6 @@ Use standard OpenTelemetry environment variables. No code changes needed.
|
|
|
43
43
|
# Service identification
|
|
44
44
|
OTEL_SERVICE_NAME=my-service
|
|
45
45
|
OTEL_SERVICE_VERSION=1.0.0
|
|
46
|
-
DEPLOYMENT_ENVIRONMENT=production
|
|
47
46
|
|
|
48
47
|
# Traces exporter (console | otlp | otlp/http | none)
|
|
49
48
|
OTEL_TRACES_EXPORTER=otlp
|
package/otel/package.json
CHANGED
|
@@ -7,14 +7,6 @@
|
|
|
7
7
|
"dependencies": {
|
|
8
8
|
"@opentelemetry/api": "^1.9.0",
|
|
9
9
|
"@opentelemetry/sdk-node": "^0.203.0",
|
|
10
|
-
"@opentelemetry/sdk-trace-base": "^2.0.1",
|
|
11
|
-
"@opentelemetry/sdk-metrics": "^2.0.1",
|
|
12
|
-
"@opentelemetry/resources": "^2.0.1",
|
|
13
|
-
"@opentelemetry/semantic-conventions": "^1.36.0",
|
|
14
|
-
"@opentelemetry/exporter-trace-otlp-http": "^0.203.0",
|
|
15
|
-
"@opentelemetry/exporter-metrics-otlp-http": "^0.203.0",
|
|
16
|
-
"@opentelemetry/instrumentation-http": "^0.203.0",
|
|
17
|
-
"@opentelemetry/instrumentation-express": "^0.52.0",
|
|
18
10
|
"@trpc/server": "^11.1.2"
|
|
19
11
|
}
|
|
20
12
|
}
|
|
@@ -0,0 +1,805 @@
|
|
|
1
|
+
lockfileVersion: '6.0'
|
|
2
|
+
|
|
3
|
+
settings:
|
|
4
|
+
autoInstallPeers: true
|
|
5
|
+
excludeLinksFromLockfile: false
|
|
6
|
+
|
|
7
|
+
importers:
|
|
8
|
+
|
|
9
|
+
.:
|
|
10
|
+
dependencies:
|
|
11
|
+
'@opentelemetry/api':
|
|
12
|
+
specifier: ^1.9.0
|
|
13
|
+
version: 1.9.0
|
|
14
|
+
'@opentelemetry/exporter-metrics-otlp-http':
|
|
15
|
+
specifier: ^0.203.0
|
|
16
|
+
version: 0.203.0(@opentelemetry/api@1.9.0)
|
|
17
|
+
'@opentelemetry/exporter-trace-otlp-http':
|
|
18
|
+
specifier: ^0.203.0
|
|
19
|
+
version: 0.203.0(@opentelemetry/api@1.9.0)
|
|
20
|
+
'@opentelemetry/instrumentation-express':
|
|
21
|
+
specifier: ^0.52.0
|
|
22
|
+
version: 0.52.0(@opentelemetry/api@1.9.0)
|
|
23
|
+
'@opentelemetry/instrumentation-http':
|
|
24
|
+
specifier: ^0.203.0
|
|
25
|
+
version: 0.203.0(@opentelemetry/api@1.9.0)
|
|
26
|
+
'@opentelemetry/resources':
|
|
27
|
+
specifier: ^2.0.1
|
|
28
|
+
version: 2.0.1(@opentelemetry/api@1.9.0)
|
|
29
|
+
'@opentelemetry/sdk-metrics':
|
|
30
|
+
specifier: ^2.0.1
|
|
31
|
+
version: 2.0.1(@opentelemetry/api@1.9.0)
|
|
32
|
+
'@opentelemetry/sdk-node':
|
|
33
|
+
specifier: ^0.203.0
|
|
34
|
+
version: 0.203.0(@opentelemetry/api@1.9.0)
|
|
35
|
+
'@opentelemetry/sdk-trace-base':
|
|
36
|
+
specifier: ^2.0.1
|
|
37
|
+
version: 2.0.1(@opentelemetry/api@1.9.0)
|
|
38
|
+
'@opentelemetry/semantic-conventions':
|
|
39
|
+
specifier: ^1.36.0
|
|
40
|
+
version: 1.36.0
|
|
41
|
+
'@trpc/server':
|
|
42
|
+
specifier: ^11.1.2
|
|
43
|
+
version: 11.5.0(typescript@5.7.3)
|
|
44
|
+
|
|
45
|
+
..: {}
|
|
46
|
+
|
|
47
|
+
../core: {}
|
|
48
|
+
|
|
49
|
+
../dist/core: {}
|
|
50
|
+
|
|
51
|
+
../dist/examples/node: {}
|
|
52
|
+
|
|
53
|
+
../dist/examples/trpc-node: {}
|
|
54
|
+
|
|
55
|
+
../dist/otel: {}
|
|
56
|
+
|
|
57
|
+
../dist/providers/algolia: {}
|
|
58
|
+
|
|
59
|
+
../dist/providers/commercetools: {}
|
|
60
|
+
|
|
61
|
+
../dist/providers/fake: {}
|
|
62
|
+
|
|
63
|
+
../dist/providers/posthog: {}
|
|
64
|
+
|
|
65
|
+
../dist/trpc: {}
|
|
66
|
+
|
|
67
|
+
../examples/node: {}
|
|
68
|
+
|
|
69
|
+
../providers/algolia: {}
|
|
70
|
+
|
|
71
|
+
../providers/commercetools: {}
|
|
72
|
+
|
|
73
|
+
../providers/fake: {}
|
|
74
|
+
|
|
75
|
+
../providers/posthog: {}
|
|
76
|
+
|
|
77
|
+
../trpc: {}
|
|
78
|
+
|
|
79
|
+
dist/core/core: {}
|
|
80
|
+
|
|
81
|
+
dist/examples/trpc-node: {}
|
|
82
|
+
|
|
83
|
+
dist/otel: {}
|
|
84
|
+
|
|
85
|
+
dist/providers/algolia/providers/algolia: {}
|
|
86
|
+
|
|
87
|
+
dist/providers/commercetools/providers/commercetools: {}
|
|
88
|
+
|
|
89
|
+
dist/providers/fake/providers/fake: {}
|
|
90
|
+
|
|
91
|
+
dist/providers/posthog: {}
|
|
92
|
+
|
|
93
|
+
dist/trpc/trpc: {}
|
|
94
|
+
|
|
95
|
+
packages:
|
|
96
|
+
|
|
97
|
+
/@grpc/grpc-js@1.13.4:
|
|
98
|
+
resolution: {integrity: sha512-GsFaMXCkMqkKIvwCQjCrwH+GHbPKBjhwo/8ZuUkWHqbI73Kky9I+pQltrlT0+MWpedCoosda53lgjYfyEPgxBg==}
|
|
99
|
+
engines: {node: '>=12.10.0'}
|
|
100
|
+
dependencies:
|
|
101
|
+
'@grpc/proto-loader': 0.7.15
|
|
102
|
+
'@js-sdsl/ordered-map': 4.4.2
|
|
103
|
+
dev: false
|
|
104
|
+
|
|
105
|
+
/@grpc/proto-loader@0.7.15:
|
|
106
|
+
resolution: {integrity: sha512-tMXdRCfYVixjuFK+Hk0Q1s38gV9zDiDJfWL3h1rv4Qc39oILCu1TRTDt7+fGUI8K4G1Fj125Hx/ru3azECWTyQ==}
|
|
107
|
+
engines: {node: '>=6'}
|
|
108
|
+
hasBin: true
|
|
109
|
+
dependencies:
|
|
110
|
+
lodash.camelcase: 4.3.0
|
|
111
|
+
long: 5.3.2
|
|
112
|
+
protobufjs: 7.5.4
|
|
113
|
+
yargs: 17.7.2
|
|
114
|
+
dev: false
|
|
115
|
+
|
|
116
|
+
/@js-sdsl/ordered-map@4.4.2:
|
|
117
|
+
resolution: {integrity: sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw==}
|
|
118
|
+
dev: false
|
|
119
|
+
|
|
120
|
+
/@opentelemetry/api-logs@0.203.0:
|
|
121
|
+
resolution: {integrity: sha512-9B9RU0H7Ya1Dx/Rkyc4stuBZSGVQF27WigitInx2QQoj6KUpEFYPKoWjdFTunJYxmXmh17HeBvbMa1EhGyPmqQ==}
|
|
122
|
+
engines: {node: '>=8.0.0'}
|
|
123
|
+
dependencies:
|
|
124
|
+
'@opentelemetry/api': 1.9.0
|
|
125
|
+
dev: false
|
|
126
|
+
|
|
127
|
+
/@opentelemetry/api@1.9.0:
|
|
128
|
+
resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==}
|
|
129
|
+
engines: {node: '>=8.0.0'}
|
|
130
|
+
dev: false
|
|
131
|
+
|
|
132
|
+
/@opentelemetry/context-async-hooks@2.0.1(@opentelemetry/api@1.9.0):
|
|
133
|
+
resolution: {integrity: sha512-XuY23lSI3d4PEqKA+7SLtAgwqIfc6E/E9eAQWLN1vlpC53ybO3o6jW4BsXo1xvz9lYyyWItfQDDLzezER01mCw==}
|
|
134
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
135
|
+
peerDependencies:
|
|
136
|
+
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
|
137
|
+
dependencies:
|
|
138
|
+
'@opentelemetry/api': 1.9.0
|
|
139
|
+
dev: false
|
|
140
|
+
|
|
141
|
+
/@opentelemetry/core@2.0.1(@opentelemetry/api@1.9.0):
|
|
142
|
+
resolution: {integrity: sha512-MaZk9SJIDgo1peKevlbhP6+IwIiNPNmswNL4AF0WaQJLbHXjr9SrZMgS12+iqr9ToV4ZVosCcc0f8Rg67LXjxw==}
|
|
143
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
144
|
+
peerDependencies:
|
|
145
|
+
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
|
146
|
+
dependencies:
|
|
147
|
+
'@opentelemetry/api': 1.9.0
|
|
148
|
+
'@opentelemetry/semantic-conventions': 1.36.0
|
|
149
|
+
dev: false
|
|
150
|
+
|
|
151
|
+
/@opentelemetry/exporter-logs-otlp-grpc@0.203.0(@opentelemetry/api@1.9.0):
|
|
152
|
+
resolution: {integrity: sha512-g/2Y2noc/l96zmM+g0LdeuyYKINyBwN6FJySoU15LHPLcMN/1a0wNk2SegwKcxrRdE7Xsm7fkIR5n6XFe3QpPw==}
|
|
153
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
154
|
+
peerDependencies:
|
|
155
|
+
'@opentelemetry/api': ^1.3.0
|
|
156
|
+
dependencies:
|
|
157
|
+
'@grpc/grpc-js': 1.13.4
|
|
158
|
+
'@opentelemetry/api': 1.9.0
|
|
159
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
160
|
+
'@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
161
|
+
'@opentelemetry/otlp-grpc-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
162
|
+
'@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0)
|
|
163
|
+
'@opentelemetry/sdk-logs': 0.203.0(@opentelemetry/api@1.9.0)
|
|
164
|
+
dev: false
|
|
165
|
+
|
|
166
|
+
/@opentelemetry/exporter-logs-otlp-http@0.203.0(@opentelemetry/api@1.9.0):
|
|
167
|
+
resolution: {integrity: sha512-s0hys1ljqlMTbXx2XiplmMJg9wG570Z5lH7wMvrZX6lcODI56sG4HL03jklF63tBeyNwK2RV1/ntXGo3HgG4Qw==}
|
|
168
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
169
|
+
peerDependencies:
|
|
170
|
+
'@opentelemetry/api': ^1.3.0
|
|
171
|
+
dependencies:
|
|
172
|
+
'@opentelemetry/api': 1.9.0
|
|
173
|
+
'@opentelemetry/api-logs': 0.203.0
|
|
174
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
175
|
+
'@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
176
|
+
'@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0)
|
|
177
|
+
'@opentelemetry/sdk-logs': 0.203.0(@opentelemetry/api@1.9.0)
|
|
178
|
+
dev: false
|
|
179
|
+
|
|
180
|
+
/@opentelemetry/exporter-logs-otlp-proto@0.203.0(@opentelemetry/api@1.9.0):
|
|
181
|
+
resolution: {integrity: sha512-nl/7S91MXn5R1aIzoWtMKGvqxgJgepB/sH9qW0rZvZtabnsjbf8OQ1uSx3yogtvLr0GzwD596nQKz2fV7q2RBw==}
|
|
182
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
183
|
+
peerDependencies:
|
|
184
|
+
'@opentelemetry/api': ^1.3.0
|
|
185
|
+
dependencies:
|
|
186
|
+
'@opentelemetry/api': 1.9.0
|
|
187
|
+
'@opentelemetry/api-logs': 0.203.0
|
|
188
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
189
|
+
'@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
190
|
+
'@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0)
|
|
191
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
192
|
+
'@opentelemetry/sdk-logs': 0.203.0(@opentelemetry/api@1.9.0)
|
|
193
|
+
'@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0)
|
|
194
|
+
dev: false
|
|
195
|
+
|
|
196
|
+
/@opentelemetry/exporter-metrics-otlp-grpc@0.203.0(@opentelemetry/api@1.9.0):
|
|
197
|
+
resolution: {integrity: sha512-FCCj9nVZpumPQSEI57jRAA89hQQgONuoC35Lt+rayWY/mzCAc6BQT7RFyFaZKJ2B7IQ8kYjOCPsF/HGFWjdQkQ==}
|
|
198
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
199
|
+
peerDependencies:
|
|
200
|
+
'@opentelemetry/api': ^1.3.0
|
|
201
|
+
dependencies:
|
|
202
|
+
'@grpc/grpc-js': 1.13.4
|
|
203
|
+
'@opentelemetry/api': 1.9.0
|
|
204
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
205
|
+
'@opentelemetry/exporter-metrics-otlp-http': 0.203.0(@opentelemetry/api@1.9.0)
|
|
206
|
+
'@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
207
|
+
'@opentelemetry/otlp-grpc-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
208
|
+
'@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0)
|
|
209
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
210
|
+
'@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0)
|
|
211
|
+
dev: false
|
|
212
|
+
|
|
213
|
+
/@opentelemetry/exporter-metrics-otlp-http@0.203.0(@opentelemetry/api@1.9.0):
|
|
214
|
+
resolution: {integrity: sha512-HFSW10y8lY6BTZecGNpV3GpoSy7eaO0Z6GATwZasnT4bEsILp8UJXNG5OmEsz4SdwCSYvyCbTJdNbZP3/8LGCQ==}
|
|
215
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
216
|
+
peerDependencies:
|
|
217
|
+
'@opentelemetry/api': ^1.3.0
|
|
218
|
+
dependencies:
|
|
219
|
+
'@opentelemetry/api': 1.9.0
|
|
220
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
221
|
+
'@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
222
|
+
'@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0)
|
|
223
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
224
|
+
'@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0)
|
|
225
|
+
dev: false
|
|
226
|
+
|
|
227
|
+
/@opentelemetry/exporter-metrics-otlp-proto@0.203.0(@opentelemetry/api@1.9.0):
|
|
228
|
+
resolution: {integrity: sha512-OZnhyd9npU7QbyuHXFEPVm3LnjZYifuKpT3kTnF84mXeEQ84pJJZgyLBpU4FSkSwUkt/zbMyNAI7y5+jYTWGIg==}
|
|
229
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
230
|
+
peerDependencies:
|
|
231
|
+
'@opentelemetry/api': ^1.3.0
|
|
232
|
+
dependencies:
|
|
233
|
+
'@opentelemetry/api': 1.9.0
|
|
234
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
235
|
+
'@opentelemetry/exporter-metrics-otlp-http': 0.203.0(@opentelemetry/api@1.9.0)
|
|
236
|
+
'@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
237
|
+
'@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0)
|
|
238
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
239
|
+
'@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0)
|
|
240
|
+
dev: false
|
|
241
|
+
|
|
242
|
+
/@opentelemetry/exporter-prometheus@0.203.0(@opentelemetry/api@1.9.0):
|
|
243
|
+
resolution: {integrity: sha512-2jLuNuw5m4sUj/SncDf/mFPabUxMZmmYetx5RKIMIQyPnl6G6ooFzfeE8aXNRf8YD1ZXNlCnRPcISxjveGJHNg==}
|
|
244
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
245
|
+
peerDependencies:
|
|
246
|
+
'@opentelemetry/api': ^1.3.0
|
|
247
|
+
dependencies:
|
|
248
|
+
'@opentelemetry/api': 1.9.0
|
|
249
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
250
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
251
|
+
'@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0)
|
|
252
|
+
dev: false
|
|
253
|
+
|
|
254
|
+
/@opentelemetry/exporter-trace-otlp-grpc@0.203.0(@opentelemetry/api@1.9.0):
|
|
255
|
+
resolution: {integrity: sha512-322coOTf81bm6cAA8+ML6A+m4r2xTCdmAZzGNTboPXRzhwPt4JEmovsFAs+grpdarObd68msOJ9FfH3jxM6wqA==}
|
|
256
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
257
|
+
peerDependencies:
|
|
258
|
+
'@opentelemetry/api': ^1.3.0
|
|
259
|
+
dependencies:
|
|
260
|
+
'@grpc/grpc-js': 1.13.4
|
|
261
|
+
'@opentelemetry/api': 1.9.0
|
|
262
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
263
|
+
'@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
264
|
+
'@opentelemetry/otlp-grpc-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
265
|
+
'@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0)
|
|
266
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
267
|
+
'@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0)
|
|
268
|
+
dev: false
|
|
269
|
+
|
|
270
|
+
/@opentelemetry/exporter-trace-otlp-http@0.203.0(@opentelemetry/api@1.9.0):
|
|
271
|
+
resolution: {integrity: sha512-ZDiaswNYo0yq/cy1bBLJFe691izEJ6IgNmkjm4C6kE9ub/OMQqDXORx2D2j8fzTBTxONyzusbaZlqtfmyqURPw==}
|
|
272
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
273
|
+
peerDependencies:
|
|
274
|
+
'@opentelemetry/api': ^1.3.0
|
|
275
|
+
dependencies:
|
|
276
|
+
'@opentelemetry/api': 1.9.0
|
|
277
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
278
|
+
'@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
279
|
+
'@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0)
|
|
280
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
281
|
+
'@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0)
|
|
282
|
+
dev: false
|
|
283
|
+
|
|
284
|
+
/@opentelemetry/exporter-trace-otlp-proto@0.203.0(@opentelemetry/api@1.9.0):
|
|
285
|
+
resolution: {integrity: sha512-1xwNTJ86L0aJmWRwENCJlH4LULMG2sOXWIVw+Szta4fkqKVY50Eo4HoVKKq6U9QEytrWCr8+zjw0q/ZOeXpcAQ==}
|
|
286
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
287
|
+
peerDependencies:
|
|
288
|
+
'@opentelemetry/api': ^1.3.0
|
|
289
|
+
dependencies:
|
|
290
|
+
'@opentelemetry/api': 1.9.0
|
|
291
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
292
|
+
'@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
293
|
+
'@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0)
|
|
294
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
295
|
+
'@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0)
|
|
296
|
+
dev: false
|
|
297
|
+
|
|
298
|
+
/@opentelemetry/exporter-zipkin@2.0.1(@opentelemetry/api@1.9.0):
|
|
299
|
+
resolution: {integrity: sha512-a9eeyHIipfdxzCfc2XPrE+/TI3wmrZUDFtG2RRXHSbZZULAny7SyybSvaDvS77a7iib5MPiAvluwVvbGTsHxsw==}
|
|
300
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
301
|
+
peerDependencies:
|
|
302
|
+
'@opentelemetry/api': ^1.0.0
|
|
303
|
+
dependencies:
|
|
304
|
+
'@opentelemetry/api': 1.9.0
|
|
305
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
306
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
307
|
+
'@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0)
|
|
308
|
+
'@opentelemetry/semantic-conventions': 1.36.0
|
|
309
|
+
dev: false
|
|
310
|
+
|
|
311
|
+
/@opentelemetry/instrumentation-express@0.52.0(@opentelemetry/api@1.9.0):
|
|
312
|
+
resolution: {integrity: sha512-W7pizN0Wh1/cbNhhTf7C62NpyYw7VfCFTYg0DYieSTrtPBT1vmoSZei19wfKLnrMsz3sHayCg0HxCVL2c+cz5w==}
|
|
313
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
314
|
+
peerDependencies:
|
|
315
|
+
'@opentelemetry/api': ^1.3.0
|
|
316
|
+
dependencies:
|
|
317
|
+
'@opentelemetry/api': 1.9.0
|
|
318
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
319
|
+
'@opentelemetry/instrumentation': 0.203.0(@opentelemetry/api@1.9.0)
|
|
320
|
+
'@opentelemetry/semantic-conventions': 1.36.0
|
|
321
|
+
transitivePeerDependencies:
|
|
322
|
+
- supports-color
|
|
323
|
+
dev: false
|
|
324
|
+
|
|
325
|
+
/@opentelemetry/instrumentation-http@0.203.0(@opentelemetry/api@1.9.0):
|
|
326
|
+
resolution: {integrity: sha512-y3uQAcCOAwnO6vEuNVocmpVzG3PER6/YZqbPbbffDdJ9te5NkHEkfSMNzlC3+v7KlE+WinPGc3N7MR30G1HY2g==}
|
|
327
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
328
|
+
peerDependencies:
|
|
329
|
+
'@opentelemetry/api': ^1.3.0
|
|
330
|
+
dependencies:
|
|
331
|
+
'@opentelemetry/api': 1.9.0
|
|
332
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
333
|
+
'@opentelemetry/instrumentation': 0.203.0(@opentelemetry/api@1.9.0)
|
|
334
|
+
'@opentelemetry/semantic-conventions': 1.36.0
|
|
335
|
+
forwarded-parse: 2.1.2
|
|
336
|
+
transitivePeerDependencies:
|
|
337
|
+
- supports-color
|
|
338
|
+
dev: false
|
|
339
|
+
|
|
340
|
+
/@opentelemetry/instrumentation@0.203.0(@opentelemetry/api@1.9.0):
|
|
341
|
+
resolution: {integrity: sha512-ke1qyM+3AK2zPuBPb6Hk/GCsc5ewbLvPNkEuELx/JmANeEp6ZjnZ+wypPAJSucTw0wvCGrUaibDSdcrGFoWxKQ==}
|
|
342
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
343
|
+
peerDependencies:
|
|
344
|
+
'@opentelemetry/api': ^1.3.0
|
|
345
|
+
dependencies:
|
|
346
|
+
'@opentelemetry/api': 1.9.0
|
|
347
|
+
'@opentelemetry/api-logs': 0.203.0
|
|
348
|
+
import-in-the-middle: 1.14.2
|
|
349
|
+
require-in-the-middle: 7.5.2
|
|
350
|
+
transitivePeerDependencies:
|
|
351
|
+
- supports-color
|
|
352
|
+
dev: false
|
|
353
|
+
|
|
354
|
+
/@opentelemetry/otlp-exporter-base@0.203.0(@opentelemetry/api@1.9.0):
|
|
355
|
+
resolution: {integrity: sha512-Wbxf7k+87KyvxFr5D7uOiSq/vHXWommvdnNE7vECO3tAhsA2GfOlpWINCMWUEPdHZ7tCXxw6Epp3vgx3jU7llQ==}
|
|
356
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
357
|
+
peerDependencies:
|
|
358
|
+
'@opentelemetry/api': ^1.3.0
|
|
359
|
+
dependencies:
|
|
360
|
+
'@opentelemetry/api': 1.9.0
|
|
361
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
362
|
+
'@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0)
|
|
363
|
+
dev: false
|
|
364
|
+
|
|
365
|
+
/@opentelemetry/otlp-grpc-exporter-base@0.203.0(@opentelemetry/api@1.9.0):
|
|
366
|
+
resolution: {integrity: sha512-te0Ze1ueJF+N/UOFl5jElJW4U0pZXQ8QklgSfJ2linHN0JJsuaHG8IabEUi2iqxY8ZBDlSiz1Trfv5JcjWWWwQ==}
|
|
367
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
368
|
+
peerDependencies:
|
|
369
|
+
'@opentelemetry/api': ^1.3.0
|
|
370
|
+
dependencies:
|
|
371
|
+
'@grpc/grpc-js': 1.13.4
|
|
372
|
+
'@opentelemetry/api': 1.9.0
|
|
373
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
374
|
+
'@opentelemetry/otlp-exporter-base': 0.203.0(@opentelemetry/api@1.9.0)
|
|
375
|
+
'@opentelemetry/otlp-transformer': 0.203.0(@opentelemetry/api@1.9.0)
|
|
376
|
+
dev: false
|
|
377
|
+
|
|
378
|
+
/@opentelemetry/otlp-transformer@0.203.0(@opentelemetry/api@1.9.0):
|
|
379
|
+
resolution: {integrity: sha512-Y8I6GgoCna0qDQ2W6GCRtaF24SnvqvA8OfeTi7fqigD23u8Jpb4R5KFv/pRvrlGagcCLICMIyh9wiejp4TXu/A==}
|
|
380
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
381
|
+
peerDependencies:
|
|
382
|
+
'@opentelemetry/api': ^1.3.0
|
|
383
|
+
dependencies:
|
|
384
|
+
'@opentelemetry/api': 1.9.0
|
|
385
|
+
'@opentelemetry/api-logs': 0.203.0
|
|
386
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
387
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
388
|
+
'@opentelemetry/sdk-logs': 0.203.0(@opentelemetry/api@1.9.0)
|
|
389
|
+
'@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0)
|
|
390
|
+
'@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0)
|
|
391
|
+
protobufjs: 7.5.4
|
|
392
|
+
dev: false
|
|
393
|
+
|
|
394
|
+
/@opentelemetry/propagator-b3@2.0.1(@opentelemetry/api@1.9.0):
|
|
395
|
+
resolution: {integrity: sha512-Hc09CaQ8Tf5AGLmf449H726uRoBNGPBL4bjr7AnnUpzWMvhdn61F78z9qb6IqB737TffBsokGAK1XykFEZ1igw==}
|
|
396
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
397
|
+
peerDependencies:
|
|
398
|
+
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
|
399
|
+
dependencies:
|
|
400
|
+
'@opentelemetry/api': 1.9.0
|
|
401
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
402
|
+
dev: false
|
|
403
|
+
|
|
404
|
+
/@opentelemetry/propagator-jaeger@2.0.1(@opentelemetry/api@1.9.0):
|
|
405
|
+
resolution: {integrity: sha512-7PMdPBmGVH2eQNb/AtSJizQNgeNTfh6jQFqys6lfhd6P4r+m/nTh3gKPPpaCXVdRQ+z93vfKk+4UGty390283w==}
|
|
406
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
407
|
+
peerDependencies:
|
|
408
|
+
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
|
409
|
+
dependencies:
|
|
410
|
+
'@opentelemetry/api': 1.9.0
|
|
411
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
412
|
+
dev: false
|
|
413
|
+
|
|
414
|
+
/@opentelemetry/resources@2.0.1(@opentelemetry/api@1.9.0):
|
|
415
|
+
resolution: {integrity: sha512-dZOB3R6zvBwDKnHDTB4X1xtMArB/d324VsbiPkX/Yu0Q8T2xceRthoIVFhJdvgVM2QhGVUyX9tzwiNxGtoBJUw==}
|
|
416
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
417
|
+
peerDependencies:
|
|
418
|
+
'@opentelemetry/api': '>=1.3.0 <1.10.0'
|
|
419
|
+
dependencies:
|
|
420
|
+
'@opentelemetry/api': 1.9.0
|
|
421
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
422
|
+
'@opentelemetry/semantic-conventions': 1.36.0
|
|
423
|
+
dev: false
|
|
424
|
+
|
|
425
|
+
/@opentelemetry/sdk-logs@0.203.0(@opentelemetry/api@1.9.0):
|
|
426
|
+
resolution: {integrity: sha512-vM2+rPq0Vi3nYA5akQD2f3QwossDnTDLvKbea6u/A2NZ3XDkPxMfo/PNrDoXhDUD/0pPo2CdH5ce/thn9K0kLw==}
|
|
427
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
428
|
+
peerDependencies:
|
|
429
|
+
'@opentelemetry/api': '>=1.4.0 <1.10.0'
|
|
430
|
+
dependencies:
|
|
431
|
+
'@opentelemetry/api': 1.9.0
|
|
432
|
+
'@opentelemetry/api-logs': 0.203.0
|
|
433
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
434
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
435
|
+
dev: false
|
|
436
|
+
|
|
437
|
+
/@opentelemetry/sdk-metrics@2.0.1(@opentelemetry/api@1.9.0):
|
|
438
|
+
resolution: {integrity: sha512-wf8OaJoSnujMAHWR3g+/hGvNcsC16rf9s1So4JlMiFaFHiE4HpIA3oUh+uWZQ7CNuK8gVW/pQSkgoa5HkkOl0g==}
|
|
439
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
440
|
+
peerDependencies:
|
|
441
|
+
'@opentelemetry/api': '>=1.9.0 <1.10.0'
|
|
442
|
+
dependencies:
|
|
443
|
+
'@opentelemetry/api': 1.9.0
|
|
444
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
445
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
446
|
+
dev: false
|
|
447
|
+
|
|
448
|
+
/@opentelemetry/sdk-node@0.203.0(@opentelemetry/api@1.9.0):
|
|
449
|
+
resolution: {integrity: sha512-zRMvrZGhGVMvAbbjiNQW3eKzW/073dlrSiAKPVWmkoQzah9wfynpVPeL55f9fVIm0GaBxTLcPeukWGy0/Wj7KQ==}
|
|
450
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
451
|
+
peerDependencies:
|
|
452
|
+
'@opentelemetry/api': '>=1.3.0 <1.10.0'
|
|
453
|
+
dependencies:
|
|
454
|
+
'@opentelemetry/api': 1.9.0
|
|
455
|
+
'@opentelemetry/api-logs': 0.203.0
|
|
456
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
457
|
+
'@opentelemetry/exporter-logs-otlp-grpc': 0.203.0(@opentelemetry/api@1.9.0)
|
|
458
|
+
'@opentelemetry/exporter-logs-otlp-http': 0.203.0(@opentelemetry/api@1.9.0)
|
|
459
|
+
'@opentelemetry/exporter-logs-otlp-proto': 0.203.0(@opentelemetry/api@1.9.0)
|
|
460
|
+
'@opentelemetry/exporter-metrics-otlp-grpc': 0.203.0(@opentelemetry/api@1.9.0)
|
|
461
|
+
'@opentelemetry/exporter-metrics-otlp-http': 0.203.0(@opentelemetry/api@1.9.0)
|
|
462
|
+
'@opentelemetry/exporter-metrics-otlp-proto': 0.203.0(@opentelemetry/api@1.9.0)
|
|
463
|
+
'@opentelemetry/exporter-prometheus': 0.203.0(@opentelemetry/api@1.9.0)
|
|
464
|
+
'@opentelemetry/exporter-trace-otlp-grpc': 0.203.0(@opentelemetry/api@1.9.0)
|
|
465
|
+
'@opentelemetry/exporter-trace-otlp-http': 0.203.0(@opentelemetry/api@1.9.0)
|
|
466
|
+
'@opentelemetry/exporter-trace-otlp-proto': 0.203.0(@opentelemetry/api@1.9.0)
|
|
467
|
+
'@opentelemetry/exporter-zipkin': 2.0.1(@opentelemetry/api@1.9.0)
|
|
468
|
+
'@opentelemetry/instrumentation': 0.203.0(@opentelemetry/api@1.9.0)
|
|
469
|
+
'@opentelemetry/propagator-b3': 2.0.1(@opentelemetry/api@1.9.0)
|
|
470
|
+
'@opentelemetry/propagator-jaeger': 2.0.1(@opentelemetry/api@1.9.0)
|
|
471
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
472
|
+
'@opentelemetry/sdk-logs': 0.203.0(@opentelemetry/api@1.9.0)
|
|
473
|
+
'@opentelemetry/sdk-metrics': 2.0.1(@opentelemetry/api@1.9.0)
|
|
474
|
+
'@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0)
|
|
475
|
+
'@opentelemetry/sdk-trace-node': 2.0.1(@opentelemetry/api@1.9.0)
|
|
476
|
+
'@opentelemetry/semantic-conventions': 1.36.0
|
|
477
|
+
transitivePeerDependencies:
|
|
478
|
+
- supports-color
|
|
479
|
+
dev: false
|
|
480
|
+
|
|
481
|
+
/@opentelemetry/sdk-trace-base@2.0.1(@opentelemetry/api@1.9.0):
|
|
482
|
+
resolution: {integrity: sha512-xYLlvk/xdScGx1aEqvxLwf6sXQLXCjk3/1SQT9X9AoN5rXRhkdvIFShuNNmtTEPRBqcsMbS4p/gJLNI2wXaDuQ==}
|
|
483
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
484
|
+
peerDependencies:
|
|
485
|
+
'@opentelemetry/api': '>=1.3.0 <1.10.0'
|
|
486
|
+
dependencies:
|
|
487
|
+
'@opentelemetry/api': 1.9.0
|
|
488
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
489
|
+
'@opentelemetry/resources': 2.0.1(@opentelemetry/api@1.9.0)
|
|
490
|
+
'@opentelemetry/semantic-conventions': 1.36.0
|
|
491
|
+
dev: false
|
|
492
|
+
|
|
493
|
+
/@opentelemetry/sdk-trace-node@2.0.1(@opentelemetry/api@1.9.0):
|
|
494
|
+
resolution: {integrity: sha512-UhdbPF19pMpBtCWYP5lHbTogLWx9N0EBxtdagvkn5YtsAnCBZzL7SjktG+ZmupRgifsHMjwUaCCaVmqGfSADmA==}
|
|
495
|
+
engines: {node: ^18.19.0 || >=20.6.0}
|
|
496
|
+
peerDependencies:
|
|
497
|
+
'@opentelemetry/api': '>=1.0.0 <1.10.0'
|
|
498
|
+
dependencies:
|
|
499
|
+
'@opentelemetry/api': 1.9.0
|
|
500
|
+
'@opentelemetry/context-async-hooks': 2.0.1(@opentelemetry/api@1.9.0)
|
|
501
|
+
'@opentelemetry/core': 2.0.1(@opentelemetry/api@1.9.0)
|
|
502
|
+
'@opentelemetry/sdk-trace-base': 2.0.1(@opentelemetry/api@1.9.0)
|
|
503
|
+
dev: false
|
|
504
|
+
|
|
505
|
+
/@opentelemetry/semantic-conventions@1.36.0:
|
|
506
|
+
resolution: {integrity: sha512-TtxJSRD8Ohxp6bKkhrm27JRHAxPczQA7idtcTOMYI+wQRRrfgqxHv1cFbCApcSnNjtXkmzFozn6jQtFrOmbjPQ==}
|
|
507
|
+
engines: {node: '>=14'}
|
|
508
|
+
dev: false
|
|
509
|
+
|
|
510
|
+
/@protobufjs/aspromise@1.1.2:
|
|
511
|
+
resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==}
|
|
512
|
+
dev: false
|
|
513
|
+
|
|
514
|
+
/@protobufjs/base64@1.1.2:
|
|
515
|
+
resolution: {integrity: sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==}
|
|
516
|
+
dev: false
|
|
517
|
+
|
|
518
|
+
/@protobufjs/codegen@2.0.4:
|
|
519
|
+
resolution: {integrity: sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==}
|
|
520
|
+
dev: false
|
|
521
|
+
|
|
522
|
+
/@protobufjs/eventemitter@1.1.0:
|
|
523
|
+
resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==}
|
|
524
|
+
dev: false
|
|
525
|
+
|
|
526
|
+
/@protobufjs/fetch@1.1.0:
|
|
527
|
+
resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==}
|
|
528
|
+
dependencies:
|
|
529
|
+
'@protobufjs/aspromise': 1.1.2
|
|
530
|
+
'@protobufjs/inquire': 1.1.0
|
|
531
|
+
dev: false
|
|
532
|
+
|
|
533
|
+
/@protobufjs/float@1.0.2:
|
|
534
|
+
resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==}
|
|
535
|
+
dev: false
|
|
536
|
+
|
|
537
|
+
/@protobufjs/inquire@1.1.0:
|
|
538
|
+
resolution: {integrity: sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==}
|
|
539
|
+
dev: false
|
|
540
|
+
|
|
541
|
+
/@protobufjs/path@1.1.2:
|
|
542
|
+
resolution: {integrity: sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==}
|
|
543
|
+
dev: false
|
|
544
|
+
|
|
545
|
+
/@protobufjs/pool@1.1.0:
|
|
546
|
+
resolution: {integrity: sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==}
|
|
547
|
+
dev: false
|
|
548
|
+
|
|
549
|
+
/@protobufjs/utf8@1.1.0:
|
|
550
|
+
resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==}
|
|
551
|
+
dev: false
|
|
552
|
+
|
|
553
|
+
/@trpc/server@11.5.0(typescript@5.7.3):
|
|
554
|
+
resolution: {integrity: sha512-0IBtkmUCeO2ycn4K45/cqsujnlCQrSvkCo7lFDpg3kGMIPiLyLRciID5IiS7prEjRjeITa+od2aaHTIwONApVw==}
|
|
555
|
+
peerDependencies:
|
|
556
|
+
typescript: '>=5.7.2'
|
|
557
|
+
dependencies:
|
|
558
|
+
typescript: 5.7.3
|
|
559
|
+
dev: false
|
|
560
|
+
|
|
561
|
+
/@types/node@24.3.0:
|
|
562
|
+
resolution: {integrity: sha512-aPTXCrfwnDLj4VvXrm+UUCQjNEvJgNA8s5F1cvwQU+3KNltTOkBm1j30uNLyqqPNe7gE3KFzImYoZEfLhp4Yow==}
|
|
563
|
+
dependencies:
|
|
564
|
+
undici-types: 7.10.0
|
|
565
|
+
dev: false
|
|
566
|
+
|
|
567
|
+
/acorn-import-attributes@1.9.5(acorn@8.15.0):
|
|
568
|
+
resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==}
|
|
569
|
+
peerDependencies:
|
|
570
|
+
acorn: ^8
|
|
571
|
+
dependencies:
|
|
572
|
+
acorn: 8.15.0
|
|
573
|
+
dev: false
|
|
574
|
+
|
|
575
|
+
/acorn@8.15.0:
|
|
576
|
+
resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==}
|
|
577
|
+
engines: {node: '>=0.4.0'}
|
|
578
|
+
hasBin: true
|
|
579
|
+
dev: false
|
|
580
|
+
|
|
581
|
+
/ansi-regex@5.0.1:
|
|
582
|
+
resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
|
|
583
|
+
engines: {node: '>=8'}
|
|
584
|
+
dev: false
|
|
585
|
+
|
|
586
|
+
/ansi-styles@4.3.0:
|
|
587
|
+
resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
|
|
588
|
+
engines: {node: '>=8'}
|
|
589
|
+
dependencies:
|
|
590
|
+
color-convert: 2.0.1
|
|
591
|
+
dev: false
|
|
592
|
+
|
|
593
|
+
/cjs-module-lexer@1.4.3:
|
|
594
|
+
resolution: {integrity: sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==}
|
|
595
|
+
dev: false
|
|
596
|
+
|
|
597
|
+
/cliui@8.0.1:
|
|
598
|
+
resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
|
|
599
|
+
engines: {node: '>=12'}
|
|
600
|
+
dependencies:
|
|
601
|
+
string-width: 4.2.3
|
|
602
|
+
strip-ansi: 6.0.1
|
|
603
|
+
wrap-ansi: 7.0.0
|
|
604
|
+
dev: false
|
|
605
|
+
|
|
606
|
+
/color-convert@2.0.1:
|
|
607
|
+
resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
|
|
608
|
+
engines: {node: '>=7.0.0'}
|
|
609
|
+
dependencies:
|
|
610
|
+
color-name: 1.1.4
|
|
611
|
+
dev: false
|
|
612
|
+
|
|
613
|
+
/color-name@1.1.4:
|
|
614
|
+
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
|
|
615
|
+
dev: false
|
|
616
|
+
|
|
617
|
+
/debug@4.4.1:
|
|
618
|
+
resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==}
|
|
619
|
+
engines: {node: '>=6.0'}
|
|
620
|
+
peerDependencies:
|
|
621
|
+
supports-color: '*'
|
|
622
|
+
peerDependenciesMeta:
|
|
623
|
+
supports-color:
|
|
624
|
+
optional: true
|
|
625
|
+
dependencies:
|
|
626
|
+
ms: 2.1.3
|
|
627
|
+
dev: false
|
|
628
|
+
|
|
629
|
+
/emoji-regex@8.0.0:
|
|
630
|
+
resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
|
|
631
|
+
dev: false
|
|
632
|
+
|
|
633
|
+
/escalade@3.2.0:
|
|
634
|
+
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
|
|
635
|
+
engines: {node: '>=6'}
|
|
636
|
+
dev: false
|
|
637
|
+
|
|
638
|
+
/forwarded-parse@2.1.2:
|
|
639
|
+
resolution: {integrity: sha512-alTFZZQDKMporBH77856pXgzhEzaUVmLCDk+egLgIgHst3Tpndzz8MnKe+GzRJRfvVdn69HhpW7cmXzvtLvJAw==}
|
|
640
|
+
dev: false
|
|
641
|
+
|
|
642
|
+
/function-bind@1.1.2:
|
|
643
|
+
resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
|
|
644
|
+
dev: false
|
|
645
|
+
|
|
646
|
+
/get-caller-file@2.0.5:
|
|
647
|
+
resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
|
|
648
|
+
engines: {node: 6.* || 8.* || >= 10.*}
|
|
649
|
+
dev: false
|
|
650
|
+
|
|
651
|
+
/hasown@2.0.2:
|
|
652
|
+
resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
|
|
653
|
+
engines: {node: '>= 0.4'}
|
|
654
|
+
dependencies:
|
|
655
|
+
function-bind: 1.1.2
|
|
656
|
+
dev: false
|
|
657
|
+
|
|
658
|
+
/import-in-the-middle@1.14.2:
|
|
659
|
+
resolution: {integrity: sha512-5tCuY9BV8ujfOpwtAGgsTx9CGUapcFMEEyByLv1B+v2+6DhAcw+Zr0nhQT7uwaZ7DiourxFEscghOR8e1aPLQw==}
|
|
660
|
+
dependencies:
|
|
661
|
+
acorn: 8.15.0
|
|
662
|
+
acorn-import-attributes: 1.9.5(acorn@8.15.0)
|
|
663
|
+
cjs-module-lexer: 1.4.3
|
|
664
|
+
module-details-from-path: 1.0.4
|
|
665
|
+
dev: false
|
|
666
|
+
|
|
667
|
+
/is-core-module@2.16.1:
|
|
668
|
+
resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==}
|
|
669
|
+
engines: {node: '>= 0.4'}
|
|
670
|
+
dependencies:
|
|
671
|
+
hasown: 2.0.2
|
|
672
|
+
dev: false
|
|
673
|
+
|
|
674
|
+
/is-fullwidth-code-point@3.0.0:
|
|
675
|
+
resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
|
|
676
|
+
engines: {node: '>=8'}
|
|
677
|
+
dev: false
|
|
678
|
+
|
|
679
|
+
/lodash.camelcase@4.3.0:
|
|
680
|
+
resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==}
|
|
681
|
+
dev: false
|
|
682
|
+
|
|
683
|
+
/long@5.3.2:
|
|
684
|
+
resolution: {integrity: sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==}
|
|
685
|
+
dev: false
|
|
686
|
+
|
|
687
|
+
/module-details-from-path@1.0.4:
|
|
688
|
+
resolution: {integrity: sha512-EGWKgxALGMgzvxYF1UyGTy0HXX/2vHLkw6+NvDKW2jypWbHpjQuj4UMcqQWXHERJhVGKikolT06G3bcKe4fi7w==}
|
|
689
|
+
dev: false
|
|
690
|
+
|
|
691
|
+
/ms@2.1.3:
|
|
692
|
+
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
|
|
693
|
+
dev: false
|
|
694
|
+
|
|
695
|
+
/path-parse@1.0.7:
|
|
696
|
+
resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
|
|
697
|
+
dev: false
|
|
698
|
+
|
|
699
|
+
/protobufjs@7.5.4:
|
|
700
|
+
resolution: {integrity: sha512-CvexbZtbov6jW2eXAvLukXjXUW1TzFaivC46BpWc/3BpcCysb5Vffu+B3XHMm8lVEuy2Mm4XGex8hBSg1yapPg==}
|
|
701
|
+
engines: {node: '>=12.0.0'}
|
|
702
|
+
requiresBuild: true
|
|
703
|
+
dependencies:
|
|
704
|
+
'@protobufjs/aspromise': 1.1.2
|
|
705
|
+
'@protobufjs/base64': 1.1.2
|
|
706
|
+
'@protobufjs/codegen': 2.0.4
|
|
707
|
+
'@protobufjs/eventemitter': 1.1.0
|
|
708
|
+
'@protobufjs/fetch': 1.1.0
|
|
709
|
+
'@protobufjs/float': 1.0.2
|
|
710
|
+
'@protobufjs/inquire': 1.1.0
|
|
711
|
+
'@protobufjs/path': 1.1.2
|
|
712
|
+
'@protobufjs/pool': 1.1.0
|
|
713
|
+
'@protobufjs/utf8': 1.1.0
|
|
714
|
+
'@types/node': 24.3.0
|
|
715
|
+
long: 5.3.2
|
|
716
|
+
dev: false
|
|
717
|
+
|
|
718
|
+
/require-directory@2.1.1:
|
|
719
|
+
resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
|
|
720
|
+
engines: {node: '>=0.10.0'}
|
|
721
|
+
dev: false
|
|
722
|
+
|
|
723
|
+
/require-in-the-middle@7.5.2:
|
|
724
|
+
resolution: {integrity: sha512-gAZ+kLqBdHarXB64XpAe2VCjB7rIRv+mU8tfRWziHRJ5umKsIHN2tLLv6EtMw7WCdP19S0ERVMldNvxYCHnhSQ==}
|
|
725
|
+
engines: {node: '>=8.6.0'}
|
|
726
|
+
dependencies:
|
|
727
|
+
debug: 4.4.1
|
|
728
|
+
module-details-from-path: 1.0.4
|
|
729
|
+
resolve: 1.22.10
|
|
730
|
+
transitivePeerDependencies:
|
|
731
|
+
- supports-color
|
|
732
|
+
dev: false
|
|
733
|
+
|
|
734
|
+
/resolve@1.22.10:
|
|
735
|
+
resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==}
|
|
736
|
+
engines: {node: '>= 0.4'}
|
|
737
|
+
hasBin: true
|
|
738
|
+
dependencies:
|
|
739
|
+
is-core-module: 2.16.1
|
|
740
|
+
path-parse: 1.0.7
|
|
741
|
+
supports-preserve-symlinks-flag: 1.0.0
|
|
742
|
+
dev: false
|
|
743
|
+
|
|
744
|
+
/string-width@4.2.3:
|
|
745
|
+
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
|
|
746
|
+
engines: {node: '>=8'}
|
|
747
|
+
dependencies:
|
|
748
|
+
emoji-regex: 8.0.0
|
|
749
|
+
is-fullwidth-code-point: 3.0.0
|
|
750
|
+
strip-ansi: 6.0.1
|
|
751
|
+
dev: false
|
|
752
|
+
|
|
753
|
+
/strip-ansi@6.0.1:
|
|
754
|
+
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
|
|
755
|
+
engines: {node: '>=8'}
|
|
756
|
+
dependencies:
|
|
757
|
+
ansi-regex: 5.0.1
|
|
758
|
+
dev: false
|
|
759
|
+
|
|
760
|
+
/supports-preserve-symlinks-flag@1.0.0:
|
|
761
|
+
resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
|
|
762
|
+
engines: {node: '>= 0.4'}
|
|
763
|
+
dev: false
|
|
764
|
+
|
|
765
|
+
/typescript@5.7.3:
|
|
766
|
+
resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==}
|
|
767
|
+
engines: {node: '>=14.17'}
|
|
768
|
+
hasBin: true
|
|
769
|
+
dev: false
|
|
770
|
+
|
|
771
|
+
/undici-types@7.10.0:
|
|
772
|
+
resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==}
|
|
773
|
+
dev: false
|
|
774
|
+
|
|
775
|
+
/wrap-ansi@7.0.0:
|
|
776
|
+
resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
|
|
777
|
+
engines: {node: '>=10'}
|
|
778
|
+
dependencies:
|
|
779
|
+
ansi-styles: 4.3.0
|
|
780
|
+
string-width: 4.2.3
|
|
781
|
+
strip-ansi: 6.0.1
|
|
782
|
+
dev: false
|
|
783
|
+
|
|
784
|
+
/y18n@5.0.8:
|
|
785
|
+
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
|
|
786
|
+
engines: {node: '>=10'}
|
|
787
|
+
dev: false
|
|
788
|
+
|
|
789
|
+
/yargs-parser@21.1.1:
|
|
790
|
+
resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
|
|
791
|
+
engines: {node: '>=12'}
|
|
792
|
+
dev: false
|
|
793
|
+
|
|
794
|
+
/yargs@17.7.2:
|
|
795
|
+
resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
|
|
796
|
+
engines: {node: '>=12'}
|
|
797
|
+
dependencies:
|
|
798
|
+
cliui: 8.0.1
|
|
799
|
+
escalade: 3.2.0
|
|
800
|
+
get-caller-file: 2.0.5
|
|
801
|
+
require-directory: 2.1.1
|
|
802
|
+
string-width: 4.2.3
|
|
803
|
+
y18n: 5.0.8
|
|
804
|
+
yargs-parser: 21.1.1
|
|
805
|
+
dev: false
|
package/otel/src/index.ts
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
//
|
|
2
|
-
|
|
1
|
+
// OpenTelemetry auto-initialization based on standard environment variables
|
|
2
|
+
// See: https://opentelemetry.io/docs/specs/otel/configuration/sdk-environment-variables/
|
|
3
3
|
|
|
4
|
-
//
|
|
5
|
-
export
|
|
6
|
-
export
|
|
7
|
-
export * from './trpc-middleware';
|
|
8
|
-
export * from './provider-instrumentation';
|
|
4
|
+
// Framework integration exports (internal use only)
|
|
5
|
+
export { createTRPCTracing } from './trpc-middleware';
|
|
6
|
+
export { createProviderInstrumentation } from './provider-instrumentation';
|
|
9
7
|
|
|
10
|
-
//
|
|
11
|
-
export {
|
|
12
|
-
export type { Span, Tracer, SpanOptions, Attributes } from '@opentelemetry/api';
|
|
8
|
+
// Graceful shutdown for process termination
|
|
9
|
+
export { shutdownOtel } from './sdk';
|
package/otel/src/sdk.ts
CHANGED
|
@@ -1,16 +1,4 @@
|
|
|
1
1
|
import { NodeSDK } from '@opentelemetry/sdk-node';
|
|
2
|
-
import { resourceFromAttributes, defaultResource } from '@opentelemetry/resources';
|
|
3
|
-
import { SEMRESATTRS_SERVICE_NAME, SEMRESATTRS_SERVICE_VERSION, SEMRESATTRS_DEPLOYMENT_ENVIRONMENT } from '@opentelemetry/semantic-conventions';
|
|
4
|
-
import {
|
|
5
|
-
BatchSpanProcessor,
|
|
6
|
-
} from '@opentelemetry/sdk-trace-base';
|
|
7
|
-
import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
|
|
8
|
-
import { ExpressInstrumentation } from '@opentelemetry/instrumentation-express';
|
|
9
|
-
import {
|
|
10
|
-
getConfigFromEnv,
|
|
11
|
-
createTraceExporter,
|
|
12
|
-
createMetricReader,
|
|
13
|
-
} from './config';
|
|
14
2
|
|
|
15
3
|
let sdk: NodeSDK | null = null;
|
|
16
4
|
let isInitialized = false;
|
|
@@ -35,59 +23,9 @@ function ensureInitialized(): void {
|
|
|
35
23
|
|
|
36
24
|
// Prevent multiple initialization attempts
|
|
37
25
|
initializationPromise = Promise.resolve().then(() => {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
if (process.env['OTEL_LOG_LEVEL'] === 'debug') {
|
|
42
|
-
console.log('OpenTelemetry auto-initializing with config:', {
|
|
43
|
-
serviceName: config.serviceName,
|
|
44
|
-
environment: config.environment,
|
|
45
|
-
tracesExporter: process.env['OTEL_TRACES_EXPORTER'] || 'console',
|
|
46
|
-
metricsExporter: process.env['OTEL_METRICS_EXPORTER'] || 'console',
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
const attributes: Record<string, string> = {
|
|
51
|
-
[SEMRESATTRS_SERVICE_NAME]: config.serviceName,
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
if (config.serviceVersion) {
|
|
55
|
-
attributes[SEMRESATTRS_SERVICE_VERSION] = config.serviceVersion;
|
|
56
|
-
}
|
|
57
|
-
if (config.environment) {
|
|
58
|
-
attributes[SEMRESATTRS_DEPLOYMENT_ENVIRONMENT] = config.environment;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
const customResource = resourceFromAttributes(attributes);
|
|
62
|
-
const resource = defaultResource().merge(customResource);
|
|
63
|
-
|
|
64
|
-
const traceExporter = createTraceExporter(config);
|
|
65
|
-
const metricReader = createMetricReader(config);
|
|
66
|
-
|
|
67
|
-
const instrumentations = [
|
|
68
|
-
new HttpInstrumentation({
|
|
69
|
-
requestHook: (span, request: unknown) => {
|
|
70
|
-
const req = request as { headers?: Record<string, string | number> };
|
|
71
|
-
if (req.headers) {
|
|
72
|
-
span.setAttribute('http.request.body.size', req.headers['content-length'] || 0);
|
|
73
|
-
}
|
|
74
|
-
},
|
|
75
|
-
responseHook: (span, response: unknown) => {
|
|
76
|
-
const res = response as { headers?: Record<string, string | number> };
|
|
77
|
-
if (res.headers) {
|
|
78
|
-
span.setAttribute('http.response.body.size', res.headers['content-length'] || 0);
|
|
79
|
-
}
|
|
80
|
-
},
|
|
81
|
-
}),
|
|
82
|
-
new ExpressInstrumentation(),
|
|
83
|
-
];
|
|
84
|
-
|
|
85
|
-
sdk = new NodeSDK({
|
|
86
|
-
resource,
|
|
87
|
-
spanProcessors: traceExporter ? [new BatchSpanProcessor(traceExporter)] : [],
|
|
88
|
-
metricReader,
|
|
89
|
-
instrumentations,
|
|
90
|
-
});
|
|
26
|
+
// Let NodeSDK handle everything automatically via env vars
|
|
27
|
+
// The SDK will automatically pick up OTEL_* environment variables
|
|
28
|
+
sdk = new NodeSDK();
|
|
91
29
|
|
|
92
30
|
sdk.start();
|
|
93
31
|
isInitialized = true;
|
package/package.json
CHANGED
package/trpc/src/index.ts
CHANGED
|
@@ -16,14 +16,11 @@ const t = initTRPC.context<{ client: Client; session: Session }>().create({
|
|
|
16
16
|
export const router = t.router;
|
|
17
17
|
export const mergeRouters = t.mergeRouters;
|
|
18
18
|
|
|
19
|
+
// Always apply tracing middleware - exporters controlled via OTEL env vars
|
|
19
20
|
const basePublicProcedure = t.procedure;
|
|
20
21
|
export const publicProcedure = basePublicProcedure.use(createTRPCTracing());
|
|
21
22
|
|
|
22
|
-
export function
|
|
23
|
-
return basePublicProcedure.use(createTRPCTracing(options));
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export function createTRPCRouter<T extends Client = Client>(client: T, enableTracing = true) {
|
|
23
|
+
export function createTRPCRouter<T extends Client = Client>(client: T) {
|
|
27
24
|
type BaseProviderKeys<T> = {
|
|
28
25
|
[K in keyof T]: T[K] extends BaseProvider ? K : never;
|
|
29
26
|
}[keyof T];
|
|
@@ -43,9 +40,8 @@ export function createTRPCRouter<T extends Client = Client>(client: T, enableTra
|
|
|
43
40
|
};
|
|
44
41
|
|
|
45
42
|
const routes: Record<string, any> = {};
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
: basePublicProcedure;
|
|
43
|
+
// Always enable tracing - exporters are controlled via env vars
|
|
44
|
+
const procedure = basePublicProcedure.use(createTRPCTracing());
|
|
49
45
|
|
|
50
46
|
for (const key in client) {
|
|
51
47
|
const provider = client[key];
|
package/otel/src/config.ts
DELETED
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
import { SpanExporter } from '@opentelemetry/sdk-trace-base';
|
|
2
|
-
import { ConsoleSpanExporter } from '@opentelemetry/sdk-trace-base';
|
|
3
|
-
import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';
|
|
4
|
-
import { OTLPMetricExporter } from '@opentelemetry/exporter-metrics-otlp-http';
|
|
5
|
-
import { MetricReader, PeriodicExportingMetricReader, ConsoleMetricExporter } from '@opentelemetry/sdk-metrics';
|
|
6
|
-
|
|
7
|
-
// Internal config interface - not exported
|
|
8
|
-
interface OtelConfig {
|
|
9
|
-
serviceName: string;
|
|
10
|
-
serviceVersion?: string;
|
|
11
|
-
environment?: string;
|
|
12
|
-
otlpEndpoint?: string;
|
|
13
|
-
otlpHeaders?: Record<string, string>;
|
|
14
|
-
traceEnabled: boolean;
|
|
15
|
-
metricsEnabled: boolean;
|
|
16
|
-
metricExportIntervalMillis: number;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
// Detect if we're running in a browser environment
|
|
20
|
-
function isBrowser(): boolean {
|
|
21
|
-
return typeof window !== 'undefined' && typeof process === 'undefined';
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
// Parse config from standard OTEL environment variables
|
|
25
|
-
// https://opentelemetry.io/docs/specs/otel/configuration/sdk-environment-variables/
|
|
26
|
-
export function getConfigFromEnv(): OtelConfig {
|
|
27
|
-
// In browser environments, return disabled config
|
|
28
|
-
if (isBrowser()) {
|
|
29
|
-
return {
|
|
30
|
-
serviceName: 'browser-service',
|
|
31
|
-
serviceVersion: undefined,
|
|
32
|
-
environment: 'browser',
|
|
33
|
-
otlpEndpoint: undefined,
|
|
34
|
-
otlpHeaders: undefined,
|
|
35
|
-
traceEnabled: false,
|
|
36
|
-
metricsEnabled: false,
|
|
37
|
-
metricExportIntervalMillis: 60000,
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
// Determine exporter type from standard OTEL vars
|
|
42
|
-
const tracesExporter = process.env['OTEL_TRACES_EXPORTER'] || 'console';
|
|
43
|
-
const metricsExporter = process.env['OTEL_METRICS_EXPORTER'] || 'console';
|
|
44
|
-
|
|
45
|
-
return {
|
|
46
|
-
serviceName: process.env['OTEL_SERVICE_NAME'] || 'unknown_service',
|
|
47
|
-
serviceVersion: process.env['OTEL_SERVICE_VERSION'],
|
|
48
|
-
environment: process.env['DEPLOYMENT_ENVIRONMENT'] || process.env['NODE_ENV'] || 'development',
|
|
49
|
-
otlpEndpoint: process.env['OTEL_EXPORTER_OTLP_ENDPOINT'],
|
|
50
|
-
otlpHeaders: process.env['OTEL_EXPORTER_OTLP_HEADERS']
|
|
51
|
-
? parseHeaders(process.env['OTEL_EXPORTER_OTLP_HEADERS'])
|
|
52
|
-
: undefined,
|
|
53
|
-
traceEnabled: tracesExporter !== 'none',
|
|
54
|
-
metricsEnabled: metricsExporter !== 'none',
|
|
55
|
-
metricExportIntervalMillis: process.env['OTEL_METRIC_EXPORT_INTERVAL']
|
|
56
|
-
? parseInt(process.env['OTEL_METRIC_EXPORT_INTERVAL'], 10)
|
|
57
|
-
: 60000, // Default 60 seconds per OTEL spec
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
function parseHeaders(headerString: string): Record<string, string> {
|
|
62
|
-
const headers: Record<string, string> = {};
|
|
63
|
-
headerString.split(',').forEach(header => {
|
|
64
|
-
const [key, value] = header.split('=');
|
|
65
|
-
if (key && value) {
|
|
66
|
-
headers[key.trim()] = value.trim();
|
|
67
|
-
}
|
|
68
|
-
});
|
|
69
|
-
return headers;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
export function createTraceExporter(config: OtelConfig): SpanExporter | undefined {
|
|
73
|
-
if (!config.traceEnabled) {
|
|
74
|
-
return undefined;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
const tracesExporter = process.env['OTEL_TRACES_EXPORTER'] || 'console';
|
|
78
|
-
|
|
79
|
-
switch (tracesExporter) {
|
|
80
|
-
case 'otlp':
|
|
81
|
-
case 'otlp/http': {
|
|
82
|
-
if (!config.otlpEndpoint) {
|
|
83
|
-
console.warn('OTEL_EXPORTER_OTLP_ENDPOINT not set, falling back to console');
|
|
84
|
-
return new ConsoleSpanExporter();
|
|
85
|
-
}
|
|
86
|
-
// Use standard endpoint resolution
|
|
87
|
-
const tracesEndpoint = process.env['OTEL_EXPORTER_OTLP_TRACES_ENDPOINT'] ||
|
|
88
|
-
`${config.otlpEndpoint}/v1/traces`;
|
|
89
|
-
return new OTLPTraceExporter({
|
|
90
|
-
url: tracesEndpoint,
|
|
91
|
-
headers: config.otlpHeaders,
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
case 'console':
|
|
95
|
-
return new ConsoleSpanExporter();
|
|
96
|
-
case 'none':
|
|
97
|
-
default:
|
|
98
|
-
return undefined;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
export function createMetricReader(config: OtelConfig): MetricReader | undefined {
|
|
103
|
-
if (!config.metricsEnabled) {
|
|
104
|
-
return undefined;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
const metricsExporter = process.env['OTEL_METRICS_EXPORTER'] || 'console';
|
|
108
|
-
let exporter;
|
|
109
|
-
|
|
110
|
-
switch (metricsExporter) {
|
|
111
|
-
case 'otlp':
|
|
112
|
-
case 'otlp/http': {
|
|
113
|
-
if (!config.otlpEndpoint) {
|
|
114
|
-
console.warn('OTEL_EXPORTER_OTLP_ENDPOINT not set, falling back to console');
|
|
115
|
-
exporter = new ConsoleMetricExporter();
|
|
116
|
-
} else {
|
|
117
|
-
// Use standard endpoint resolution
|
|
118
|
-
const metricsEndpoint = process.env['OTEL_EXPORTER_OTLP_METRICS_ENDPOINT'] ||
|
|
119
|
-
`${config.otlpEndpoint}/v1/metrics`;
|
|
120
|
-
exporter = new OTLPMetricExporter({
|
|
121
|
-
url: metricsEndpoint,
|
|
122
|
-
headers: config.otlpHeaders,
|
|
123
|
-
});
|
|
124
|
-
}
|
|
125
|
-
break;
|
|
126
|
-
}
|
|
127
|
-
case 'console':
|
|
128
|
-
exporter = new ConsoleMetricExporter();
|
|
129
|
-
break;
|
|
130
|
-
case 'none':
|
|
131
|
-
default:
|
|
132
|
-
return undefined;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
return new PeriodicExportingMetricReader({
|
|
136
|
-
exporter,
|
|
137
|
-
exportIntervalMillis: config.metricExportIntervalMillis,
|
|
138
|
-
});
|
|
139
|
-
}
|