@geekmidas/telescope 10.0.0-alpha.99 → 10.0.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.
- package/CHANGELOG.md +79 -0
- package/README.md +18 -28
- package/dist/InMemoryMetricsStorage-BbKCL3YL.d.mts +47 -0
- package/dist/InMemoryMetricsStorage-BbKCL3YL.d.mts.map +1 -0
- package/dist/InMemoryMetricsStorage-C4drxT7G.mjs +247 -0
- package/dist/InMemoryMetricsStorage-C4drxT7G.mjs.map +1 -0
- package/dist/InMemoryMetricsStorage-D0njWUSi.cjs +252 -0
- package/dist/InMemoryMetricsStorage-D0njWUSi.cjs.map +1 -0
- package/dist/InMemoryMetricsStorage-TvPdZjL0.d.cts +47 -0
- package/dist/InMemoryMetricsStorage-TvPdZjL0.d.cts.map +1 -0
- package/dist/{MetricsAggregator-BJdIvfEv.d.mts → MetricsAggregator-4SqelGcG.d.cts} +6 -3
- package/dist/MetricsAggregator-4SqelGcG.d.cts.map +1 -0
- package/dist/MetricsAggregator-B7lUICdH.cjs +363 -0
- package/dist/MetricsAggregator-B7lUICdH.cjs.map +1 -0
- package/dist/{MetricsAggregator-CnC3oT5q.d.cts → MetricsAggregator-DZrW8ls6.d.mts} +6 -3
- package/dist/MetricsAggregator-DZrW8ls6.d.mts.map +1 -0
- package/dist/MetricsAggregator-S3DQWNas.mjs +357 -0
- package/dist/MetricsAggregator-S3DQWNas.mjs.map +1 -0
- package/dist/MetricsStorage-B86e4131.d.cts +60 -0
- package/dist/MetricsStorage-B86e4131.d.cts.map +1 -0
- package/dist/MetricsStorage-BWyP2_12.d.mts +60 -0
- package/dist/MetricsStorage-BWyP2_12.d.mts.map +1 -0
- package/dist/MetricsStorage-BypQXWiv.mjs +0 -0
- package/dist/MetricsStorage-Or8pVCe4.cjs +0 -0
- package/dist/Telescope-Cs3fv8jt.cjs +395 -0
- package/dist/Telescope-Cs3fv8jt.cjs.map +1 -0
- package/dist/{Telescope-BVfDvVvY.d.mts → Telescope-D4nmwDRA.d.cts} +7 -4
- package/dist/Telescope-D4nmwDRA.d.cts.map +1 -0
- package/dist/Telescope-Dh5av3FC.mjs +389 -0
- package/dist/Telescope-Dh5av3FC.mjs.map +1 -0
- package/dist/{Telescope-DeqSHfuB.d.cts → Telescope-Dl6VSfxd.d.mts} +7 -4
- package/dist/Telescope-Dl6VSfxd.d.mts.map +1 -0
- package/dist/Telescope.cjs +4 -385
- package/dist/Telescope.d.cts +3 -1
- package/dist/Telescope.d.mts +3 -1
- package/dist/Telescope.mjs +4 -384
- package/dist/adapters/index.d.cts +2 -2
- package/dist/adapters/index.d.mts +2 -2
- package/dist/adapters/index.mjs +0 -1
- package/dist/adapters/lambda.cjs +10 -9
- package/dist/adapters/lambda.cjs.map +1 -1
- package/dist/adapters/lambda.d.cts +13 -9
- package/dist/adapters/lambda.d.cts.map +1 -1
- package/dist/adapters/lambda.d.mts +13 -9
- package/dist/adapters/lambda.d.mts.map +1 -1
- package/dist/adapters/lambda.mjs +4 -3
- package/dist/adapters/lambda.mjs.map +1 -1
- package/dist/adapters/middy.cjs +4 -236
- package/dist/adapters/middy.d.cts +5 -60
- package/dist/adapters/middy.d.mts +5 -60
- package/dist/adapters/middy.mjs +3 -234
- package/dist/adapters/types.d.cts +2 -162
- package/dist/adapters/types.d.mts +2 -162
- package/dist/adapters/types.mjs +0 -1
- package/dist/{rolldown-runtime-VH7oDXx4.cjs → chunk-CUT6urMc.cjs} +10 -8
- package/dist/core--quSp5Qr.d.mts +78 -0
- package/dist/core--quSp5Qr.d.mts.map +1 -0
- package/dist/core-B4Jpia5H.d.cts +78 -0
- package/dist/core-B4Jpia5H.d.cts.map +1 -0
- package/dist/core-CtVHRJGv.cjs +199 -0
- package/dist/core-CtVHRJGv.cjs.map +1 -0
- package/dist/core-D6hJ6exL.mjs +139 -0
- package/dist/core-D6hJ6exL.mjs.map +1 -0
- package/dist/core.cjs +22 -22
- package/dist/core.d.cts +4 -4
- package/dist/core.d.mts +4 -4
- package/dist/core.mjs +4 -3
- package/dist/hono--uKQ7Jgi.d.mts +71 -0
- package/dist/hono--uKQ7Jgi.d.mts.map +1 -0
- package/dist/hono-C4EgpbKQ.cjs +160 -0
- package/dist/hono-C4EgpbKQ.cjs.map +1 -0
- package/dist/hono-CemCKU87.d.cts +71 -0
- package/dist/hono-CemCKU87.d.cts.map +1 -0
- package/dist/hono-DxhvnVbF.mjs +136 -0
- package/dist/hono-DxhvnVbF.mjs.map +1 -0
- package/dist/http-BiNtg85L.d.mts +107 -0
- package/dist/http-BiNtg85L.d.mts.map +1 -0
- package/dist/http-DQzgLczm.mjs +159 -0
- package/dist/http-DQzgLczm.mjs.map +1 -0
- package/dist/http-D_Z8sYXZ.cjs +219 -0
- package/dist/http-D_Z8sYXZ.cjs.map +1 -0
- package/dist/http-Dvca6fC3.d.cts +107 -0
- package/dist/http-Dvca6fC3.d.cts.map +1 -0
- package/dist/index-BL32-cvv.d.cts +1 -0
- package/dist/index-CsuikFeJ.d.mts +1 -0
- package/dist/index.cjs +9 -8
- package/dist/index.d.cts +6 -5
- package/dist/index.d.mts +6 -5
- package/dist/index.mjs +7 -5
- package/dist/instrumentation/core.cjs +11 -147
- package/dist/instrumentation/core.d.cts +3 -74
- package/dist/instrumentation/core.d.mts +3 -74
- package/dist/instrumentation/core.mjs +2 -137
- package/dist/instrumentation/hono.cjs +6 -174
- package/dist/instrumentation/hono.d.cts +2 -86
- package/dist/instrumentation/hono.d.mts +2 -86
- package/dist/instrumentation/hono.mjs +3 -170
- package/dist/instrumentation/http.cjs +11 -189
- package/dist/instrumentation/http.d.cts +2 -119
- package/dist/instrumentation/http.d.mts +2 -119
- package/dist/instrumentation/http.mjs +2 -178
- package/dist/instrumentation/index.cjs +47 -56
- package/dist/instrumentation/index.d.cts +9 -11
- package/dist/instrumentation/index.d.mts +9 -11
- package/dist/instrumentation/index.mjs +9 -10
- package/dist/instrumentation/middleware.cjs +6 -164
- package/dist/instrumentation/middleware.d.cts +2 -83
- package/dist/instrumentation/middleware.d.mts +2 -83
- package/dist/instrumentation/middleware.mjs +3 -160
- package/dist/instrumentation/otel.cjs +3 -137
- package/dist/instrumentation/otel.d.cts +2 -97
- package/dist/instrumentation/otel.d.mts +2 -97
- package/dist/instrumentation/otel.mjs +3 -136
- package/dist/instrumentation/setup.cjs +4 -142
- package/dist/instrumentation/setup.d.cts +3 -139
- package/dist/instrumentation/setup.d.mts +3 -139
- package/dist/instrumentation/setup.mjs +3 -139
- package/dist/instrumentation/tracing.cjs +10 -114
- package/dist/instrumentation/tracing.d.cts +2 -49
- package/dist/instrumentation/tracing.d.mts +2 -49
- package/dist/instrumentation/tracing.mjs +2 -105
- package/dist/logger/console.cjs +12 -18
- package/dist/logger/console.cjs.map +1 -1
- package/dist/logger/console.d.cts +10 -7
- package/dist/logger/console.d.cts.map +1 -1
- package/dist/logger/console.d.mts +10 -7
- package/dist/logger/console.d.mts.map +1 -1
- package/dist/logger/console.mjs +11 -17
- package/dist/logger/console.mjs.map +1 -1
- package/dist/logger/pino.cjs +5 -6
- package/dist/logger/pino.cjs.map +1 -1
- package/dist/logger/pino.d.cts +10 -6
- package/dist/logger/pino.d.cts.map +1 -1
- package/dist/logger/pino.d.mts +10 -6
- package/dist/logger/pino.d.mts.map +1 -1
- package/dist/logger/pino.mjs +3 -2
- package/dist/logger/pino.mjs.map +1 -1
- package/dist/memory--BK4iWiv.d.cts +40 -0
- package/dist/memory--BK4iWiv.d.cts.map +1 -0
- package/dist/memory-6S9H-IF5.mjs +123 -0
- package/dist/memory-6S9H-IF5.mjs.map +1 -0
- package/dist/memory-B0d_n1g5.cjs +129 -0
- package/dist/memory-B0d_n1g5.cjs.map +1 -0
- package/dist/memory-DCirEVFW.d.mts +40 -0
- package/dist/memory-DCirEVFW.d.mts.map +1 -0
- package/dist/metrics/MetricsAggregator.cjs +2 -354
- package/dist/metrics/MetricsAggregator.d.cts +2 -1
- package/dist/metrics/MetricsAggregator.d.mts +2 -1
- package/dist/metrics/MetricsAggregator.mjs +2 -353
- package/dist/metrics/index.cjs +4 -3
- package/dist/metrics/index.d.cts +4 -2
- package/dist/metrics/index.d.mts +4 -2
- package/dist/metrics/index.mjs +4 -2
- package/dist/metrics/storage/InMemoryMetricsStorage.cjs +3 -240
- package/dist/metrics/storage/InMemoryMetricsStorage.d.cts +4 -43
- package/dist/metrics/storage/InMemoryMetricsStorage.d.mts +4 -43
- package/dist/metrics/storage/InMemoryMetricsStorage.mjs +3 -239
- package/dist/metrics/storage/MetricsStorage.cjs +1 -0
- package/dist/metrics/storage/MetricsStorage.d.cts +3 -56
- package/dist/metrics/storage/MetricsStorage.d.mts +3 -56
- package/dist/metrics/storage/MetricsStorage.mjs +1 -1
- package/dist/metrics/storage/index.cjs +6 -6
- package/dist/metrics/storage/index.d.cts +3 -3
- package/dist/metrics/storage/index.d.mts +3 -3
- package/dist/metrics/storage/index.mjs +5 -4
- package/dist/metrics/storage/types.cjs +2 -34
- package/dist/metrics/storage/types.d.cts +2 -207
- package/dist/metrics/storage/types.d.mts +2 -207
- package/dist/metrics/storage/types.mjs +2 -33
- package/dist/metrics-D5YT-Rnq.mjs +0 -0
- package/dist/metrics-fhD3l3C3.cjs +0 -0
- package/dist/middleware-B2jFUukM.cjs +184 -0
- package/dist/middleware-B2jFUukM.cjs.map +1 -0
- package/dist/middleware-BTDncHwm.mjs +160 -0
- package/dist/middleware-BTDncHwm.mjs.map +1 -0
- package/dist/middleware-CA84nsNN.d.cts +74 -0
- package/dist/middleware-CA84nsNN.d.cts.map +1 -0
- package/dist/middleware-DAceVpfw.d.mts +74 -0
- package/dist/middleware-DAceVpfw.d.mts.map +1 -0
- package/dist/middy-B6Btl8XE.d.mts +64 -0
- package/dist/middy-B6Btl8XE.d.mts.map +1 -0
- package/dist/middy-BTR3cyvk.mjs +236 -0
- package/dist/middy-BTR3cyvk.mjs.map +1 -0
- package/dist/middy-Bq0defVg.d.cts +64 -0
- package/dist/middy-Bq0defVg.d.cts.map +1 -0
- package/dist/middy-y5Zp27eG.cjs +247 -0
- package/dist/middy-y5Zp27eG.cjs.map +1 -0
- package/dist/otel-1bJPb2Z7.d.mts +101 -0
- package/dist/otel-1bJPb2Z7.d.mts.map +1 -0
- package/dist/otel-C1HqHA2O.cjs +136 -0
- package/dist/otel-C1HqHA2O.cjs.map +1 -0
- package/dist/otel-SBVoVEHr.d.cts +101 -0
- package/dist/otel-SBVoVEHr.d.cts.map +1 -0
- package/dist/otel-wulj5B-X.mjs +130 -0
- package/dist/otel-wulj5B-X.mjs.map +1 -0
- package/dist/otlp/hono.cjs +15 -9
- package/dist/otlp/hono.cjs.map +1 -1
- package/dist/otlp/hono.d.cts +13 -3
- package/dist/otlp/hono.d.cts.map +1 -1
- package/dist/otlp/hono.d.mts +13 -3
- package/dist/otlp/hono.d.mts.map +1 -1
- package/dist/otlp/hono.mjs +11 -5
- package/dist/otlp/hono.mjs.map +1 -1
- package/dist/otlp/index.cjs +11 -11
- package/dist/otlp/index.d.cts +7 -4
- package/dist/otlp/index.d.mts +7 -4
- package/dist/otlp/index.mjs +5 -4
- package/dist/otlp/receiver.cjs +4 -88
- package/dist/otlp/receiver.d.cts +7 -59
- package/dist/otlp/receiver.d.mts +7 -59
- package/dist/otlp/receiver.mjs +4 -87
- package/dist/otlp/transformer.cjs +5 -214
- package/dist/otlp/transformer.d.cts +3 -1
- package/dist/otlp/transformer.d.mts +3 -1
- package/dist/otlp/transformer.mjs +3 -211
- package/dist/otlp/types.cjs +5 -57
- package/dist/otlp/types.d.cts +1 -1
- package/dist/otlp/types.d.mts +1 -1
- package/dist/otlp/types.mjs +2 -53
- package/dist/receiver-Cj1lbAOO.cjs +94 -0
- package/dist/receiver-Cj1lbAOO.cjs.map +1 -0
- package/dist/receiver-CxVd_9CB.mjs +89 -0
- package/dist/receiver-CxVd_9CB.mjs.map +1 -0
- package/dist/receiver-DLICx5uU.d.cts +63 -0
- package/dist/receiver-DLICx5uU.d.cts.map +1 -0
- package/dist/receiver-UeZT-H8u.d.mts +63 -0
- package/dist/receiver-UeZT-H8u.d.mts.map +1 -0
- package/dist/redact-BzkITCNW.mjs +83 -0
- package/dist/redact-BzkITCNW.mjs.map +1 -0
- package/dist/redact-DVaSSPZT.cjs +95 -0
- package/dist/redact-DVaSSPZT.cjs.map +1 -0
- package/dist/redact.cjs +3 -84
- package/dist/redact.d.cts +8 -4
- package/dist/redact.d.cts.map +1 -1
- package/dist/redact.d.mts +8 -4
- package/dist/redact.d.mts.map +1 -1
- package/dist/redact.mjs +2 -80
- package/dist/server/hono.cjs +54 -33
- package/dist/server/hono.cjs.map +1 -1
- package/dist/server/hono.d.cts +14 -19
- package/dist/server/hono.d.cts.map +1 -1
- package/dist/server/hono.d.mts +14 -19
- package/dist/server/hono.d.mts.map +1 -1
- package/dist/server/hono.mjs +52 -31
- package/dist/server/hono.mjs.map +1 -1
- package/dist/setup-B9jM77Qk.mjs +98 -0
- package/dist/setup-B9jM77Qk.mjs.map +1 -0
- package/dist/setup-Bkxm4g6b.d.mts +87 -0
- package/dist/setup-Bkxm4g6b.d.mts.map +1 -0
- package/dist/setup-CYpff5B9.cjs +110 -0
- package/dist/setup-CYpff5B9.cjs.map +1 -0
- package/dist/setup-D58N1f9O.d.cts +87 -0
- package/dist/setup-D58N1f9O.d.cts.map +1 -0
- package/dist/storage/kysely.cjs +70 -82
- package/dist/storage/kysely.cjs.map +1 -1
- package/dist/storage/kysely.d.cts +20 -36
- package/dist/storage/kysely.d.cts.map +1 -1
- package/dist/storage/kysely.d.mts +20 -36
- package/dist/storage/kysely.d.mts.map +1 -1
- package/dist/storage/kysely.mjs +69 -81
- package/dist/storage/kysely.mjs.map +1 -1
- package/dist/storage/memory.cjs +2 -122
- package/dist/storage/memory.d.cts +3 -36
- package/dist/storage/memory.d.mts +3 -36
- package/dist/storage/memory.mjs +2 -121
- package/dist/tracing-BX8uY2nR.d.cts +53 -0
- package/dist/tracing-BX8uY2nR.d.cts.map +1 -0
- package/dist/tracing-Bt1zWRlb.cjs +167 -0
- package/dist/tracing-Bt1zWRlb.cjs.map +1 -0
- package/dist/tracing-Cijm_5NI.mjs +113 -0
- package/dist/tracing-Cijm_5NI.mjs.map +1 -0
- package/dist/tracing-PnECEbEu.d.mts +53 -0
- package/dist/tracing-PnECEbEu.d.mts.map +1 -0
- package/dist/transformer-BXQPhzql.mjs +215 -0
- package/dist/transformer-BXQPhzql.mjs.map +1 -0
- package/dist/transformer-CLGZ0EQc.cjs +232 -0
- package/dist/transformer-CLGZ0EQc.cjs.map +1 -0
- package/dist/{transformer-BtqjAs0b.d.cts → transformer-CTGsaVfV.d.mts} +8 -4
- package/dist/transformer-CTGsaVfV.d.mts.map +1 -0
- package/dist/{transformer-DI6t8-YA.d.mts → transformer-ICEbxpFf.d.cts} +8 -4
- package/dist/transformer-ICEbxpFf.d.cts.map +1 -0
- package/dist/{types-BVujq4zd.d.mts → types-B1EIa_cQ.d.mts} +4 -3
- package/dist/types-B1EIa_cQ.d.mts.map +1 -0
- package/dist/types-BRzW1NM8.d.cts +166 -0
- package/dist/types-BRzW1NM8.d.cts.map +1 -0
- package/dist/types-BS3Rx8Sk.d.cts +209 -0
- package/dist/types-BS3Rx8Sk.d.cts.map +1 -0
- package/dist/types-Bwm_jNU7.mjs +54 -0
- package/dist/types-Bwm_jNU7.mjs.map +1 -0
- package/dist/types-BzQ78Efw.d.mts +166 -0
- package/dist/types-BzQ78Efw.d.mts.map +1 -0
- package/dist/types-CbNGXnJE.d.mts +209 -0
- package/dist/types-CbNGXnJE.d.mts.map +1 -0
- package/dist/{types-DVETVdpa.d.cts → types-CmOB7CLO.d.cts} +7 -6
- package/dist/types-CmOB7CLO.d.cts.map +1 -0
- package/dist/{types-DVETVdpa.d.mts → types-DBc0q5KD.d.mts} +7 -6
- package/dist/types-DBc0q5KD.d.mts.map +1 -0
- package/dist/types-Dsh-DIO_.cjs +78 -0
- package/dist/types-Dsh-DIO_.cjs.map +1 -0
- package/dist/types-ZW-nfWf6.cjs +40 -0
- package/dist/types-ZW-nfWf6.cjs.map +1 -0
- package/dist/{types-BVujq4zd.d.cts → types-l7Rlb5Mg.d.cts} +4 -3
- package/dist/types-l7Rlb5Mg.d.cts.map +1 -0
- package/dist/types-ojhnLdwz.mjs +34 -0
- package/dist/types-ojhnLdwz.mjs.map +1 -0
- package/dist/types.d.cts +1 -1
- package/dist/types.d.mts +1 -1
- package/dist/types.mjs +0 -1
- package/dist/ui-assets-BEXqOQLe.cjs +48 -0
- package/dist/ui-assets-BEXqOQLe.cjs.map +1 -0
- package/dist/ui-assets-BhTDUsrM.mjs +30 -0
- package/dist/ui-assets-BhTDUsrM.mjs.map +1 -0
- package/dist/ui-assets.cjs +5 -0
- package/dist/ui-assets.d.cts +13 -0
- package/dist/ui-assets.d.cts.map +1 -0
- package/dist/ui-assets.d.mts +13 -0
- package/dist/ui-assets.d.mts.map +1 -0
- package/dist/ui-assets.mjs +3 -0
- package/package.json +46 -46
- package/src/Telescope.ts +561 -0
- package/src/__tests__/Telescope.spec.ts +438 -0
- package/src/__tests__/pino-transport.spec.ts +115 -0
- package/src/__tests__/redact.spec.ts +336 -0
- package/src/adapters/__tests__/lambda.spec.ts +318 -0
- package/src/adapters/__tests__/middy.spec.ts +741 -0
- package/src/adapters/index.ts +22 -0
- package/src/adapters/lambda.ts +432 -0
- package/src/adapters/middy.ts +402 -0
- package/src/adapters/types.ts +181 -0
- package/src/core.ts +51 -0
- package/src/index.ts +34 -0
- package/src/instrumentation/__tests__/core.spec.ts +248 -0
- package/src/instrumentation/__tests__/hono.spec.ts +348 -0
- package/src/instrumentation/__tests__/middleware.spec.ts +528 -0
- package/src/instrumentation/__tests__/otel.spec.ts +291 -0
- package/src/instrumentation/__tests__/tracing.spec.ts +208 -0
- package/src/instrumentation/core.ts +228 -0
- package/src/instrumentation/hono.ts +270 -0
- package/src/instrumentation/http.ts +306 -0
- package/src/instrumentation/index.ts +90 -0
- package/src/instrumentation/middleware.ts +297 -0
- package/src/instrumentation/otel.ts +271 -0
- package/src/instrumentation/setup.ts +246 -0
- package/src/instrumentation/tracing.ts +145 -0
- package/src/logger/__tests__/console.spec.ts +366 -0
- package/src/logger/__tests__/pino.spec.ts +217 -0
- package/src/logger/console.ts +230 -0
- package/src/logger/pino.ts +201 -0
- package/src/metrics/MetricsAggregator.ts +555 -0
- package/src/metrics/__tests__/MetricsAggregator.spec.ts +298 -0
- package/src/metrics/index.ts +2 -0
- package/src/metrics/storage/InMemoryMetricsStorage.ts +380 -0
- package/src/metrics/storage/MetricsStorage.ts +74 -0
- package/src/metrics/storage/index.ts +3 -0
- package/src/metrics/storage/types.ts +243 -0
- package/src/otlp/__tests__/receiver.spec.ts +367 -0
- package/src/otlp/__tests__/transformer.spec.ts +455 -0
- package/src/otlp/hono.ts +120 -0
- package/src/otlp/index.ts +22 -0
- package/src/otlp/receiver.ts +162 -0
- package/src/otlp/transformer.ts +367 -0
- package/src/otlp/types.ts +364 -0
- package/src/redact.ts +116 -0
- package/src/server/__tests__/hono.spec.ts +814 -0
- package/src/server/hono.ts +442 -0
- package/src/storage/__tests__/kysely.spec.ts +715 -0
- package/src/storage/__tests__/memory.spec.ts +694 -0
- package/src/storage/kysely.ts +599 -0
- package/src/storage/memory.ts +204 -0
- package/src/types.ts +447 -0
- package/src/ui-assets.ts +40 -0
- package/tsconfig.json +9 -0
- package/ui/CHANGELOG.md +7 -0
- package/ui/index.html +12 -0
- package/ui/node_modules/.bin/tsc +21 -0
- package/ui/node_modules/.bin/tsserver +21 -0
- package/ui/node_modules/.bin/vite +21 -0
- package/ui/package.json +24 -0
- package/ui/src/App.tsx +595 -0
- package/ui/src/api.ts +88 -0
- package/ui/src/components/ExceptionDetail.tsx +100 -0
- package/ui/src/components/FilterBar.tsx +162 -0
- package/ui/src/components/LogDetail.tsx +91 -0
- package/ui/src/components/RequestDetail.tsx +143 -0
- package/ui/src/main.tsx +10 -0
- package/ui/src/styles.css +11 -0
- package/ui/src/types.ts +63 -0
- package/ui/src/vite-env.d.ts +1 -0
- package/ui/src/vite-plugin-gkm-config.ts +54 -0
- package/ui/tsconfig.json +20 -0
- package/ui/tsconfig.tsbuildinfo +1 -0
- package/ui/vite.config.ts +13 -0
- package/dist/MetricsAggregator-BJdIvfEv.d.mts.map +0 -1
- package/dist/MetricsAggregator-CnC3oT5q.d.cts.map +0 -1
- package/dist/Telescope-BVfDvVvY.d.mts.map +0 -1
- package/dist/Telescope-DeqSHfuB.d.cts.map +0 -1
- package/dist/Telescope.cjs.map +0 -1
- package/dist/Telescope.mjs.map +0 -1
- package/dist/adapters/middy.cjs.map +0 -1
- package/dist/adapters/middy.d.cts.map +0 -1
- package/dist/adapters/middy.d.mts.map +0 -1
- package/dist/adapters/middy.mjs.map +0 -1
- package/dist/adapters/types.d.cts.map +0 -1
- package/dist/adapters/types.d.mts.map +0 -1
- package/dist/instrumentation/core.cjs.map +0 -1
- package/dist/instrumentation/core.d.cts.map +0 -1
- package/dist/instrumentation/core.d.mts.map +0 -1
- package/dist/instrumentation/core.mjs.map +0 -1
- package/dist/instrumentation/hono.cjs.map +0 -1
- package/dist/instrumentation/hono.d.cts.map +0 -1
- package/dist/instrumentation/hono.d.mts.map +0 -1
- package/dist/instrumentation/hono.mjs.map +0 -1
- package/dist/instrumentation/http.cjs.map +0 -1
- package/dist/instrumentation/http.d.cts.map +0 -1
- package/dist/instrumentation/http.d.mts.map +0 -1
- package/dist/instrumentation/http.mjs.map +0 -1
- package/dist/instrumentation/middleware.cjs.map +0 -1
- package/dist/instrumentation/middleware.d.cts.map +0 -1
- package/dist/instrumentation/middleware.d.mts.map +0 -1
- package/dist/instrumentation/middleware.mjs.map +0 -1
- package/dist/instrumentation/otel.cjs.map +0 -1
- package/dist/instrumentation/otel.d.cts.map +0 -1
- package/dist/instrumentation/otel.d.mts.map +0 -1
- package/dist/instrumentation/otel.mjs.map +0 -1
- package/dist/instrumentation/sampler.cjs +0 -54
- package/dist/instrumentation/sampler.cjs.map +0 -1
- package/dist/instrumentation/sampler.d.cts +0 -38
- package/dist/instrumentation/sampler.d.cts.map +0 -1
- package/dist/instrumentation/sampler.d.mts +0 -38
- package/dist/instrumentation/sampler.d.mts.map +0 -1
- package/dist/instrumentation/sampler.mjs +0 -52
- package/dist/instrumentation/sampler.mjs.map +0 -1
- package/dist/instrumentation/setup.cjs.map +0 -1
- package/dist/instrumentation/setup.d.cts.map +0 -1
- package/dist/instrumentation/setup.d.mts.map +0 -1
- package/dist/instrumentation/setup.mjs.map +0 -1
- package/dist/instrumentation/tracing.cjs.map +0 -1
- package/dist/instrumentation/tracing.d.cts.map +0 -1
- package/dist/instrumentation/tracing.d.mts.map +0 -1
- package/dist/instrumentation/tracing.mjs.map +0 -1
- package/dist/instrumentation/trust.cjs +0 -107
- package/dist/instrumentation/trust.cjs.map +0 -1
- package/dist/instrumentation/trust.d.cts +0 -57
- package/dist/instrumentation/trust.d.cts.map +0 -1
- package/dist/instrumentation/trust.d.mts +0 -57
- package/dist/instrumentation/trust.d.mts.map +0 -1
- package/dist/instrumentation/trust.mjs +0 -104
- package/dist/instrumentation/trust.mjs.map +0 -1
- package/dist/metrics/MetricsAggregator.cjs.map +0 -1
- package/dist/metrics/MetricsAggregator.mjs.map +0 -1
- package/dist/metrics/storage/InMemoryMetricsStorage.cjs.map +0 -1
- package/dist/metrics/storage/InMemoryMetricsStorage.d.cts.map +0 -1
- package/dist/metrics/storage/InMemoryMetricsStorage.d.mts.map +0 -1
- package/dist/metrics/storage/InMemoryMetricsStorage.mjs.map +0 -1
- package/dist/metrics/storage/MetricsStorage.d.cts.map +0 -1
- package/dist/metrics/storage/MetricsStorage.d.mts.map +0 -1
- package/dist/metrics/storage/types.cjs.map +0 -1
- package/dist/metrics/storage/types.d.cts.map +0 -1
- package/dist/metrics/storage/types.d.mts.map +0 -1
- package/dist/metrics/storage/types.mjs.map +0 -1
- package/dist/otlp/receiver.cjs.map +0 -1
- package/dist/otlp/receiver.d.cts.map +0 -1
- package/dist/otlp/receiver.d.mts.map +0 -1
- package/dist/otlp/receiver.mjs.map +0 -1
- package/dist/otlp/transformer.cjs.map +0 -1
- package/dist/otlp/transformer.mjs.map +0 -1
- package/dist/otlp/types.cjs.map +0 -1
- package/dist/otlp/types.mjs.map +0 -1
- package/dist/redact.cjs.map +0 -1
- package/dist/redact.mjs.map +0 -1
- package/dist/storage/memory.cjs.map +0 -1
- package/dist/storage/memory.d.cts.map +0 -1
- package/dist/storage/memory.d.mts.map +0 -1
- package/dist/storage/memory.mjs.map +0 -1
- package/dist/transformer-BtqjAs0b.d.cts.map +0 -1
- package/dist/transformer-DI6t8-YA.d.mts.map +0 -1
- package/dist/types-BVujq4zd.d.cts.map +0 -1
- package/dist/types-BVujq4zd.d.mts.map +0 -1
- package/dist/types-DVETVdpa.d.cts.map +0 -1
- package/dist/types-DVETVdpa.d.mts.map +0 -1
package/dist/adapters/middy.mjs
CHANGED
|
@@ -1,235 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
let processHooksRegistered = false;
|
|
4
|
-
/**
|
|
5
|
-
* Register process-level hooks for telemetry flush.
|
|
6
|
-
* Called once per Lambda cold start.
|
|
7
|
-
*/
|
|
8
|
-
function registerProcessHooks() {
|
|
9
|
-
if (processHooksRegistered) return;
|
|
10
|
-
processHooksRegistered = true;
|
|
11
|
-
process.on("SIGTERM", async () => {
|
|
12
|
-
await flushTelemetry(5e3).catch(() => {});
|
|
13
|
-
});
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Extract request data from API Gateway event (v1 or v2)
|
|
17
|
-
*/
|
|
18
|
-
function extractRequestData(event) {
|
|
19
|
-
const headers = {};
|
|
20
|
-
if (event.headers) {
|
|
21
|
-
for (const [key, value] of Object.entries(event.headers)) if (value) headers[key.toLowerCase()] = value;
|
|
22
|
-
}
|
|
23
|
-
const contentLength = headers["content-length"];
|
|
24
|
-
const requestSize = contentLength ? parseInt(contentLength, 10) : void 0;
|
|
25
|
-
if ("rawPath" in event && event.requestContext?.http) {
|
|
26
|
-
const v2Event = event;
|
|
27
|
-
const query = {};
|
|
28
|
-
if (v2Event.queryStringParameters) {
|
|
29
|
-
for (const [key, value] of Object.entries(v2Event.queryStringParameters)) if (value !== void 0) query[key] = value;
|
|
30
|
-
}
|
|
31
|
-
return {
|
|
32
|
-
method: v2Event.requestContext.http.method,
|
|
33
|
-
path: v2Event.rawPath,
|
|
34
|
-
url: v2Event.rawPath + (v2Event.rawQueryString ? `?${v2Event.rawQueryString}` : ""),
|
|
35
|
-
headers,
|
|
36
|
-
query,
|
|
37
|
-
body: parseBody(v2Event.body, v2Event.isBase64Encoded),
|
|
38
|
-
ip: v2Event.requestContext.http.sourceIp,
|
|
39
|
-
requestId: v2Event.requestContext.requestId,
|
|
40
|
-
requestSize
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
const v1Event = event;
|
|
44
|
-
const queryString = v1Event.queryStringParameters ? new URLSearchParams(v1Event.queryStringParameters).toString() : "";
|
|
45
|
-
return {
|
|
46
|
-
method: v1Event.httpMethod,
|
|
47
|
-
path: v1Event.path,
|
|
48
|
-
url: v1Event.path + (queryString ? `?${queryString}` : ""),
|
|
49
|
-
headers,
|
|
50
|
-
query: v1Event.queryStringParameters || {},
|
|
51
|
-
body: parseBody(v1Event.body, v1Event.isBase64Encoded),
|
|
52
|
-
ip: v1Event.requestContext?.identity?.sourceIp,
|
|
53
|
-
requestId: v1Event.requestContext?.requestId,
|
|
54
|
-
requestSize
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Parse request body
|
|
59
|
-
*/
|
|
60
|
-
function parseBody(body, isBase64Encoded) {
|
|
61
|
-
if (!body) return void 0;
|
|
62
|
-
try {
|
|
63
|
-
const decoded = isBase64Encoded ? Buffer.from(body, "base64").toString("utf-8") : body;
|
|
64
|
-
return JSON.parse(decoded);
|
|
65
|
-
} catch {
|
|
66
|
-
return body;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Extract response data from Lambda response
|
|
71
|
-
*/
|
|
72
|
-
function extractResponseData(response) {
|
|
73
|
-
if (response && typeof response === "object" && "statusCode" in response) {
|
|
74
|
-
const res = response;
|
|
75
|
-
const headers = res.headers || {};
|
|
76
|
-
const contentLengthKey = Object.keys(headers).find((k) => k.toLowerCase() === "content-length");
|
|
77
|
-
const contentLengthValue = contentLengthKey ? headers[contentLengthKey] : void 0;
|
|
78
|
-
const responseSize = contentLengthValue ? parseInt(contentLengthValue, 10) : res.body ? Buffer.byteLength(res.body, "utf8") : void 0;
|
|
79
|
-
return {
|
|
80
|
-
status: res.statusCode || 200,
|
|
81
|
-
headers,
|
|
82
|
-
body: res.body ? tryParseJson(res.body) : void 0,
|
|
83
|
-
responseSize
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
return {
|
|
87
|
-
status: 200,
|
|
88
|
-
headers: {},
|
|
89
|
-
body: response
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
function tryParseJson(str) {
|
|
93
|
-
try {
|
|
94
|
-
return JSON.parse(str);
|
|
95
|
-
} catch {
|
|
96
|
-
return str;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Middy middleware that integrates Telescope with Lambda handlers.
|
|
101
|
-
*
|
|
102
|
-
* Features:
|
|
103
|
-
* - Records all requests and responses to Telescope
|
|
104
|
-
* - Captures exceptions automatically
|
|
105
|
-
* - Flushes telemetry before Lambda freezes
|
|
106
|
-
* - Uses Lambda context for smart flush timing
|
|
107
|
-
*
|
|
108
|
-
* @example
|
|
109
|
-
* ```typescript
|
|
110
|
-
* import middy from '@middy/core';
|
|
111
|
-
* import { telescopeMiddleware } from '@geekmidas/telescope/lambda';
|
|
112
|
-
*
|
|
113
|
-
* const handler = middy(baseHandler)
|
|
114
|
-
* .use(telescopeMiddleware(telescope));
|
|
115
|
-
* ```
|
|
116
|
-
*/
|
|
117
|
-
function telescopeMiddleware(telescope, options = {}) {
|
|
118
|
-
const { flushThresholdMs = 1e3, recordBody = true, flushTimeoutMs = 5e3 } = options;
|
|
119
|
-
registerProcessHooks();
|
|
120
|
-
return {
|
|
121
|
-
before: async (request) => {
|
|
122
|
-
request.__telescopeStartTime = Date.now();
|
|
123
|
-
request.context.callbackWaitsForEmptyEventLoop = false;
|
|
124
|
-
},
|
|
125
|
-
after: async (request) => {
|
|
126
|
-
const startTime = request.__telescopeStartTime || Date.now();
|
|
127
|
-
const duration = Date.now() - startTime;
|
|
128
|
-
try {
|
|
129
|
-
const reqData = extractRequestData(request.event);
|
|
130
|
-
const resData = extractResponseData(request.response);
|
|
131
|
-
await telescope.recordRequest({
|
|
132
|
-
method: reqData.method,
|
|
133
|
-
path: reqData.path,
|
|
134
|
-
url: reqData.url,
|
|
135
|
-
headers: reqData.headers,
|
|
136
|
-
query: reqData.query,
|
|
137
|
-
body: recordBody ? reqData.body : void 0,
|
|
138
|
-
ip: reqData.ip,
|
|
139
|
-
status: resData.status,
|
|
140
|
-
responseHeaders: resData.headers,
|
|
141
|
-
responseBody: recordBody ? resData.body : void 0,
|
|
142
|
-
duration,
|
|
143
|
-
requestSize: reqData.requestSize,
|
|
144
|
-
responseSize: resData.responseSize
|
|
145
|
-
});
|
|
146
|
-
} catch {}
|
|
147
|
-
await smartFlush(request.context, flushThresholdMs, flushTimeoutMs);
|
|
148
|
-
},
|
|
149
|
-
onError: async (request) => {
|
|
150
|
-
const startTime = request.__telescopeStartTime || Date.now();
|
|
151
|
-
const duration = Date.now() - startTime;
|
|
152
|
-
try {
|
|
153
|
-
if (request.error) await telescope.exception(request.error);
|
|
154
|
-
const reqData = extractRequestData(request.event);
|
|
155
|
-
await telescope.recordRequest({
|
|
156
|
-
method: reqData.method,
|
|
157
|
-
path: reqData.path,
|
|
158
|
-
url: reqData.url,
|
|
159
|
-
headers: reqData.headers,
|
|
160
|
-
query: reqData.query,
|
|
161
|
-
body: recordBody ? reqData.body : void 0,
|
|
162
|
-
ip: reqData.ip,
|
|
163
|
-
status: 500,
|
|
164
|
-
responseHeaders: {},
|
|
165
|
-
responseBody: { error: request.error?.message },
|
|
166
|
-
duration,
|
|
167
|
-
requestSize: reqData.requestSize
|
|
168
|
-
});
|
|
169
|
-
} catch {}
|
|
170
|
-
await smartFlush(request.context, flushThresholdMs, flushTimeoutMs);
|
|
171
|
-
}
|
|
172
|
-
};
|
|
173
|
-
}
|
|
174
|
-
/**
|
|
175
|
-
* Smart flush that respects Lambda's remaining execution time
|
|
176
|
-
*/
|
|
177
|
-
async function smartFlush(context, thresholdMs, timeoutMs) {
|
|
178
|
-
const remaining = context.getRemainingTimeInMillis();
|
|
179
|
-
const effectiveTimeout = Math.min(timeoutMs, Math.max(remaining - thresholdMs, 100));
|
|
180
|
-
if (effectiveTimeout > 0) await flushTelemetry(effectiveTimeout).catch(() => {});
|
|
181
|
-
}
|
|
182
|
-
/**
|
|
183
|
-
* Create a wrapped Lambda handler with Telescope integration.
|
|
184
|
-
* Alternative to using Middy middleware directly.
|
|
185
|
-
*
|
|
186
|
-
* @example
|
|
187
|
-
* ```typescript
|
|
188
|
-
* import { createTelescopeHandler } from '@geekmidas/telescope/lambda';
|
|
189
|
-
*
|
|
190
|
-
* export const handler = createTelescopeHandler(telescope, async (event, context) => {
|
|
191
|
-
* return { statusCode: 200, body: 'OK' };
|
|
192
|
-
* });
|
|
193
|
-
* ```
|
|
194
|
-
*/
|
|
195
|
-
function createTelescopeHandler(telescope, handler, options = {}) {
|
|
196
|
-
const { flushThresholdMs = 1e3, recordBody = true, flushTimeoutMs = 5e3 } = options;
|
|
197
|
-
registerProcessHooks();
|
|
198
|
-
return async (event, context) => {
|
|
199
|
-
const startTime = Date.now();
|
|
200
|
-
context.callbackWaitsForEmptyEventLoop = false;
|
|
201
|
-
try {
|
|
202
|
-
const result = await handler(event, context);
|
|
203
|
-
const duration = Date.now() - startTime;
|
|
204
|
-
try {
|
|
205
|
-
const reqData = extractRequestData(event);
|
|
206
|
-
const resData = extractResponseData(result);
|
|
207
|
-
await telescope.recordRequest({
|
|
208
|
-
method: reqData.method,
|
|
209
|
-
path: reqData.path,
|
|
210
|
-
url: reqData.url,
|
|
211
|
-
headers: reqData.headers,
|
|
212
|
-
query: reqData.query,
|
|
213
|
-
body: recordBody ? reqData.body : void 0,
|
|
214
|
-
ip: reqData.ip,
|
|
215
|
-
status: resData.status,
|
|
216
|
-
responseHeaders: resData.headers,
|
|
217
|
-
responseBody: recordBody ? resData.body : void 0,
|
|
218
|
-
duration,
|
|
219
|
-
requestSize: reqData.requestSize,
|
|
220
|
-
responseSize: resData.responseSize
|
|
221
|
-
});
|
|
222
|
-
} catch {}
|
|
223
|
-
await smartFlush(context, flushThresholdMs, flushTimeoutMs);
|
|
224
|
-
return result;
|
|
225
|
-
} catch (error) {
|
|
226
|
-
if (error instanceof Error) await telescope.exception(error).catch(() => {});
|
|
227
|
-
await smartFlush(context, flushThresholdMs, flushTimeoutMs);
|
|
228
|
-
throw error;
|
|
229
|
-
}
|
|
230
|
-
};
|
|
231
|
-
}
|
|
232
|
-
//#endregion
|
|
233
|
-
export { createTelescopeHandler, telescopeMiddleware };
|
|
1
|
+
import "../core-D6hJ6exL.mjs";
|
|
2
|
+
import { createTelescopeHandler, telescopeMiddleware } from "../middy-BTR3cyvk.mjs";
|
|
234
3
|
|
|
235
|
-
|
|
4
|
+
export { createTelescopeHandler, telescopeMiddleware };
|
|
@@ -1,162 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Environment types for adapter configuration
|
|
5
|
-
*/
|
|
6
|
-
export type TelescopeEnvironment = 'server' | 'lambda' | 'edge' | 'custom';
|
|
7
|
-
/**
|
|
8
|
-
* Request context passed to adapters
|
|
9
|
-
*/
|
|
10
|
-
export interface AdapterRequestContext {
|
|
11
|
-
/** Unique request ID */
|
|
12
|
-
id: string;
|
|
13
|
-
/** HTTP method */
|
|
14
|
-
method: string;
|
|
15
|
-
/** Request path */
|
|
16
|
-
path: string;
|
|
17
|
-
/** Full URL */
|
|
18
|
-
url: string;
|
|
19
|
-
/** Request headers */
|
|
20
|
-
headers: Record<string, string>;
|
|
21
|
-
/** Query parameters */
|
|
22
|
-
query: Record<string, string>;
|
|
23
|
-
/** Request body (if recorded) */
|
|
24
|
-
body?: unknown;
|
|
25
|
-
/** Client IP address */
|
|
26
|
-
ip?: string;
|
|
27
|
-
/** Request start time */
|
|
28
|
-
startTime: number;
|
|
29
|
-
/** Request body size in bytes */
|
|
30
|
-
requestSize?: number;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Response context passed to adapters
|
|
34
|
-
*/
|
|
35
|
-
export interface AdapterResponseContext {
|
|
36
|
-
/** HTTP status code */
|
|
37
|
-
status: number;
|
|
38
|
-
/** Response headers */
|
|
39
|
-
headers: Record<string, string>;
|
|
40
|
-
/** Response body (if recorded) */
|
|
41
|
-
body?: unknown;
|
|
42
|
-
/** Request duration in milliseconds */
|
|
43
|
-
duration: number;
|
|
44
|
-
/** Response body size in bytes */
|
|
45
|
-
responseSize?: number;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Error context for exception handling
|
|
49
|
-
*/
|
|
50
|
-
export interface AdapterErrorContext {
|
|
51
|
-
/** The error that occurred */
|
|
52
|
-
error: Error;
|
|
53
|
-
/** Associated request ID */
|
|
54
|
-
requestId?: string;
|
|
55
|
-
/** Whether the error was handled */
|
|
56
|
-
handled: boolean;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Span processor strategy for telemetry export
|
|
60
|
-
*/
|
|
61
|
-
export type SpanProcessorStrategy = 'batch' | 'simple';
|
|
62
|
-
/**
|
|
63
|
-
* Options for span processor configuration
|
|
64
|
-
*/
|
|
65
|
-
export interface SpanProcessorOptions {
|
|
66
|
-
/** Processor strategy (batch for servers, simple for Lambda) */
|
|
67
|
-
strategy: SpanProcessorStrategy;
|
|
68
|
-
/** Maximum queue size for batch processor (default: 2048) */
|
|
69
|
-
maxQueueSize?: number;
|
|
70
|
-
/** Scheduled delay for batch processor in ms (default: 5000) */
|
|
71
|
-
scheduledDelayMillis?: number;
|
|
72
|
-
/** Export timeout in ms (default: 30000) */
|
|
73
|
-
exportTimeoutMillis?: number;
|
|
74
|
-
/** Maximum export batch size (default: 512) */
|
|
75
|
-
maxExportBatchSize?: number;
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Adapter lifecycle hooks
|
|
79
|
-
*/
|
|
80
|
-
export interface AdapterLifecycle {
|
|
81
|
-
/**
|
|
82
|
-
* Called when the adapter is initialized
|
|
83
|
-
*/
|
|
84
|
-
onSetup?(): Promise<void> | void;
|
|
85
|
-
/**
|
|
86
|
-
* Called before the adapter is destroyed
|
|
87
|
-
*/
|
|
88
|
-
onDestroy?(): Promise<void> | void;
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Base adapter configuration
|
|
92
|
-
*/
|
|
93
|
-
export interface AdapterConfig {
|
|
94
|
-
/** Environment type */
|
|
95
|
-
environment: TelescopeEnvironment;
|
|
96
|
-
/** Span processor options */
|
|
97
|
-
spanProcessor?: SpanProcessorOptions;
|
|
98
|
-
/** Whether to auto-flush on response */
|
|
99
|
-
autoFlush?: boolean;
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Interface for environment-specific adapters.
|
|
103
|
-
* Adapters handle the integration between Telescope core and the runtime environment.
|
|
104
|
-
*/
|
|
105
|
-
export interface TelescopeAdapter<TConfig extends AdapterConfig = AdapterConfig> extends AdapterLifecycle {
|
|
106
|
-
/** Adapter configuration */
|
|
107
|
-
readonly config: TConfig;
|
|
108
|
-
/**
|
|
109
|
-
* Extract request context from the runtime's request object.
|
|
110
|
-
* This is called at the start of request processing.
|
|
111
|
-
*/
|
|
112
|
-
extractRequestContext(request: unknown): AdapterRequestContext;
|
|
113
|
-
/**
|
|
114
|
-
* Extract response context from the runtime's response object.
|
|
115
|
-
* This is called after the response is generated.
|
|
116
|
-
*/
|
|
117
|
-
extractResponseContext(response: unknown, startTime: number): AdapterResponseContext;
|
|
118
|
-
/**
|
|
119
|
-
* Flush any pending telemetry data.
|
|
120
|
-
* Critical for serverless environments where the process may be frozen.
|
|
121
|
-
*/
|
|
122
|
-
flush(): Promise<void>;
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* Hono-specific adapter configuration
|
|
126
|
-
*/
|
|
127
|
-
export interface HonoAdapterConfig extends AdapterConfig {
|
|
128
|
-
environment: 'server' | 'lambda' | 'edge';
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Lambda-specific adapter configuration
|
|
132
|
-
*/
|
|
133
|
-
export interface LambdaAdapterConfig extends AdapterConfig {
|
|
134
|
-
environment: 'lambda';
|
|
135
|
-
/** Whether to detect Lambda resource attributes */
|
|
136
|
-
detectResource?: boolean;
|
|
137
|
-
/** Custom resource attributes */
|
|
138
|
-
resourceAttributes?: Record<string, string>;
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Type helper for Hono context with Telescope
|
|
142
|
-
*/
|
|
143
|
-
export interface TelescopeHonoContext {
|
|
144
|
-
/** Request ID for correlation */
|
|
145
|
-
requestId: string;
|
|
146
|
-
/** Request start time */
|
|
147
|
-
startTime: number;
|
|
148
|
-
}
|
|
149
|
-
/**
|
|
150
|
-
* Hono context variables type
|
|
151
|
-
*/
|
|
152
|
-
export interface TelescopeHonoVariables {
|
|
153
|
-
telescope: TelescopeHonoContext;
|
|
154
|
-
}
|
|
155
|
-
/**
|
|
156
|
-
* Extended Hono context with Telescope variables
|
|
157
|
-
*/
|
|
158
|
-
export type HonoContextWithTelescope = Context<{
|
|
159
|
-
Variables: TelescopeHonoVariables;
|
|
160
|
-
}>;
|
|
161
|
-
//#endregion
|
|
162
|
-
//# sourceMappingURL=types.d.cts.map
|
|
1
|
+
import { AdapterConfig, AdapterErrorContext, AdapterLifecycle, AdapterRequestContext, AdapterResponseContext, HonoAdapterConfig, HonoContextWithTelescope, LambdaAdapterConfig, SpanProcessorOptions, SpanProcessorStrategy, TelescopeAdapter, TelescopeEnvironment, TelescopeHonoContext, TelescopeHonoVariables } from "../types-BRzW1NM8.cjs";
|
|
2
|
+
export { AdapterConfig, AdapterErrorContext, AdapterLifecycle, AdapterRequestContext, AdapterResponseContext, HonoAdapterConfig, HonoContextWithTelescope, LambdaAdapterConfig, SpanProcessorOptions, SpanProcessorStrategy, TelescopeAdapter, TelescopeEnvironment, TelescopeHonoContext, TelescopeHonoVariables };
|
|
@@ -1,162 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Environment types for adapter configuration
|
|
5
|
-
*/
|
|
6
|
-
export type TelescopeEnvironment = 'server' | 'lambda' | 'edge' | 'custom';
|
|
7
|
-
/**
|
|
8
|
-
* Request context passed to adapters
|
|
9
|
-
*/
|
|
10
|
-
export interface AdapterRequestContext {
|
|
11
|
-
/** Unique request ID */
|
|
12
|
-
id: string;
|
|
13
|
-
/** HTTP method */
|
|
14
|
-
method: string;
|
|
15
|
-
/** Request path */
|
|
16
|
-
path: string;
|
|
17
|
-
/** Full URL */
|
|
18
|
-
url: string;
|
|
19
|
-
/** Request headers */
|
|
20
|
-
headers: Record<string, string>;
|
|
21
|
-
/** Query parameters */
|
|
22
|
-
query: Record<string, string>;
|
|
23
|
-
/** Request body (if recorded) */
|
|
24
|
-
body?: unknown;
|
|
25
|
-
/** Client IP address */
|
|
26
|
-
ip?: string;
|
|
27
|
-
/** Request start time */
|
|
28
|
-
startTime: number;
|
|
29
|
-
/** Request body size in bytes */
|
|
30
|
-
requestSize?: number;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Response context passed to adapters
|
|
34
|
-
*/
|
|
35
|
-
export interface AdapterResponseContext {
|
|
36
|
-
/** HTTP status code */
|
|
37
|
-
status: number;
|
|
38
|
-
/** Response headers */
|
|
39
|
-
headers: Record<string, string>;
|
|
40
|
-
/** Response body (if recorded) */
|
|
41
|
-
body?: unknown;
|
|
42
|
-
/** Request duration in milliseconds */
|
|
43
|
-
duration: number;
|
|
44
|
-
/** Response body size in bytes */
|
|
45
|
-
responseSize?: number;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Error context for exception handling
|
|
49
|
-
*/
|
|
50
|
-
export interface AdapterErrorContext {
|
|
51
|
-
/** The error that occurred */
|
|
52
|
-
error: Error;
|
|
53
|
-
/** Associated request ID */
|
|
54
|
-
requestId?: string;
|
|
55
|
-
/** Whether the error was handled */
|
|
56
|
-
handled: boolean;
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Span processor strategy for telemetry export
|
|
60
|
-
*/
|
|
61
|
-
export type SpanProcessorStrategy = 'batch' | 'simple';
|
|
62
|
-
/**
|
|
63
|
-
* Options for span processor configuration
|
|
64
|
-
*/
|
|
65
|
-
export interface SpanProcessorOptions {
|
|
66
|
-
/** Processor strategy (batch for servers, simple for Lambda) */
|
|
67
|
-
strategy: SpanProcessorStrategy;
|
|
68
|
-
/** Maximum queue size for batch processor (default: 2048) */
|
|
69
|
-
maxQueueSize?: number;
|
|
70
|
-
/** Scheduled delay for batch processor in ms (default: 5000) */
|
|
71
|
-
scheduledDelayMillis?: number;
|
|
72
|
-
/** Export timeout in ms (default: 30000) */
|
|
73
|
-
exportTimeoutMillis?: number;
|
|
74
|
-
/** Maximum export batch size (default: 512) */
|
|
75
|
-
maxExportBatchSize?: number;
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Adapter lifecycle hooks
|
|
79
|
-
*/
|
|
80
|
-
export interface AdapterLifecycle {
|
|
81
|
-
/**
|
|
82
|
-
* Called when the adapter is initialized
|
|
83
|
-
*/
|
|
84
|
-
onSetup?(): Promise<void> | void;
|
|
85
|
-
/**
|
|
86
|
-
* Called before the adapter is destroyed
|
|
87
|
-
*/
|
|
88
|
-
onDestroy?(): Promise<void> | void;
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Base adapter configuration
|
|
92
|
-
*/
|
|
93
|
-
export interface AdapterConfig {
|
|
94
|
-
/** Environment type */
|
|
95
|
-
environment: TelescopeEnvironment;
|
|
96
|
-
/** Span processor options */
|
|
97
|
-
spanProcessor?: SpanProcessorOptions;
|
|
98
|
-
/** Whether to auto-flush on response */
|
|
99
|
-
autoFlush?: boolean;
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Interface for environment-specific adapters.
|
|
103
|
-
* Adapters handle the integration between Telescope core and the runtime environment.
|
|
104
|
-
*/
|
|
105
|
-
export interface TelescopeAdapter<TConfig extends AdapterConfig = AdapterConfig> extends AdapterLifecycle {
|
|
106
|
-
/** Adapter configuration */
|
|
107
|
-
readonly config: TConfig;
|
|
108
|
-
/**
|
|
109
|
-
* Extract request context from the runtime's request object.
|
|
110
|
-
* This is called at the start of request processing.
|
|
111
|
-
*/
|
|
112
|
-
extractRequestContext(request: unknown): AdapterRequestContext;
|
|
113
|
-
/**
|
|
114
|
-
* Extract response context from the runtime's response object.
|
|
115
|
-
* This is called after the response is generated.
|
|
116
|
-
*/
|
|
117
|
-
extractResponseContext(response: unknown, startTime: number): AdapterResponseContext;
|
|
118
|
-
/**
|
|
119
|
-
* Flush any pending telemetry data.
|
|
120
|
-
* Critical for serverless environments where the process may be frozen.
|
|
121
|
-
*/
|
|
122
|
-
flush(): Promise<void>;
|
|
123
|
-
}
|
|
124
|
-
/**
|
|
125
|
-
* Hono-specific adapter configuration
|
|
126
|
-
*/
|
|
127
|
-
export interface HonoAdapterConfig extends AdapterConfig {
|
|
128
|
-
environment: 'server' | 'lambda' | 'edge';
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Lambda-specific adapter configuration
|
|
132
|
-
*/
|
|
133
|
-
export interface LambdaAdapterConfig extends AdapterConfig {
|
|
134
|
-
environment: 'lambda';
|
|
135
|
-
/** Whether to detect Lambda resource attributes */
|
|
136
|
-
detectResource?: boolean;
|
|
137
|
-
/** Custom resource attributes */
|
|
138
|
-
resourceAttributes?: Record<string, string>;
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Type helper for Hono context with Telescope
|
|
142
|
-
*/
|
|
143
|
-
export interface TelescopeHonoContext {
|
|
144
|
-
/** Request ID for correlation */
|
|
145
|
-
requestId: string;
|
|
146
|
-
/** Request start time */
|
|
147
|
-
startTime: number;
|
|
148
|
-
}
|
|
149
|
-
/**
|
|
150
|
-
* Hono context variables type
|
|
151
|
-
*/
|
|
152
|
-
export interface TelescopeHonoVariables {
|
|
153
|
-
telescope: TelescopeHonoContext;
|
|
154
|
-
}
|
|
155
|
-
/**
|
|
156
|
-
* Extended Hono context with Telescope variables
|
|
157
|
-
*/
|
|
158
|
-
export type HonoContextWithTelescope = Context<{
|
|
159
|
-
Variables: TelescopeHonoVariables;
|
|
160
|
-
}>;
|
|
161
|
-
//#endregion
|
|
162
|
-
//# sourceMappingURL=types.d.mts.map
|
|
1
|
+
import { AdapterConfig, AdapterErrorContext, AdapterLifecycle, AdapterRequestContext, AdapterResponseContext, HonoAdapterConfig, HonoContextWithTelescope, LambdaAdapterConfig, SpanProcessorOptions, SpanProcessorStrategy, TelescopeAdapter, TelescopeEnvironment, TelescopeHonoContext, TelescopeHonoVariables } from "../types-BzQ78Efw.mjs";
|
|
2
|
+
export { AdapterConfig, AdapterErrorContext, AdapterLifecycle, AdapterRequestContext, AdapterResponseContext, HonoAdapterConfig, HonoContextWithTelescope, LambdaAdapterConfig, SpanProcessorOptions, SpanProcessorStrategy, TelescopeAdapter, TelescopeEnvironment, TelescopeHonoContext, TelescopeHonoVariables };
|
package/dist/adapters/types.mjs
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//#region
|
|
1
|
+
//#region rolldown:runtime
|
|
2
2
|
var __create = Object.create;
|
|
3
3
|
var __defProp = Object.defineProperty;
|
|
4
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -15,14 +15,16 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
15
15
|
}
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule
|
|
18
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
19
19
|
value: mod,
|
|
20
20
|
enumerable: true
|
|
21
21
|
}) : target, mod));
|
|
22
|
+
|
|
22
23
|
//#endregion
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}
|
|
24
|
+
|
|
25
|
+
Object.defineProperty(exports, '__toESM', {
|
|
26
|
+
enumerable: true,
|
|
27
|
+
get: function () {
|
|
28
|
+
return __toESM;
|
|
29
|
+
}
|
|
30
|
+
});
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { SpanProcessorOptions, SpanProcessorStrategy } from "./types-BzQ78Efw.mjs";
|
|
2
|
+
import { ReadableSpan, Span, SpanExporter, SpanProcessor } from "@opentelemetry/sdk-trace-base";
|
|
3
|
+
|
|
4
|
+
//#region src/instrumentation/core.d.ts
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Create a span processor based on the strategy
|
|
8
|
+
*/
|
|
9
|
+
declare function createSpanProcessor(exporter: SpanExporter, options: SpanProcessorOptions): SpanProcessor;
|
|
10
|
+
/**
|
|
11
|
+
* Get the recommended span processor strategy for an environment
|
|
12
|
+
*/
|
|
13
|
+
declare function getRecommendedStrategy(environment: 'server' | 'lambda' | 'edge' | 'custom'): SpanProcessorStrategy;
|
|
14
|
+
/**
|
|
15
|
+
* Set the global span processor for flush operations
|
|
16
|
+
*/
|
|
17
|
+
declare function setGlobalSpanProcessor(processor: SpanProcessor): void;
|
|
18
|
+
/**
|
|
19
|
+
* Set the global log processor for flush operations
|
|
20
|
+
*/
|
|
21
|
+
declare function setGlobalLogProcessor(processor: unknown): void;
|
|
22
|
+
/**
|
|
23
|
+
* Check if telemetry is initialized
|
|
24
|
+
*/
|
|
25
|
+
declare function isTelemetryInitialized(): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Flush all pending telemetry data.
|
|
28
|
+
* This is critical for serverless environments where the process may freeze.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```typescript
|
|
32
|
+
* // In a Lambda handler
|
|
33
|
+
* export const handler = async (event, context) => {
|
|
34
|
+
* try {
|
|
35
|
+
* const result = await processRequest(event);
|
|
36
|
+
* return result;
|
|
37
|
+
* } finally {
|
|
38
|
+
* // Flush before Lambda freezes
|
|
39
|
+
* await flushTelemetry();
|
|
40
|
+
* }
|
|
41
|
+
* };
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
declare function flushTelemetry(timeoutMs?: number): Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* Shutdown all telemetry processors
|
|
47
|
+
*/
|
|
48
|
+
declare function shutdownTelemetry(): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* Enable debug logging for telemetry
|
|
51
|
+
*/
|
|
52
|
+
declare function enableTelemetryDebug(): void;
|
|
53
|
+
/**
|
|
54
|
+
* Wraps a handler function to ensure telemetry is flushed before returning.
|
|
55
|
+
* Useful for Lambda handlers.
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```typescript
|
|
59
|
+
* export const handler = withTelemetryFlush(async (event, context) => {
|
|
60
|
+
* // Your Lambda logic here
|
|
61
|
+
* return { statusCode: 200, body: 'OK' };
|
|
62
|
+
* });
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
declare function withTelemetryFlush<TEvent, TResult>(handler: (event: TEvent, context: unknown) => Promise<TResult>): (event: TEvent, context: unknown) => Promise<TResult>;
|
|
66
|
+
/**
|
|
67
|
+
* Noop span processor for testing or when telemetry is disabled
|
|
68
|
+
*/
|
|
69
|
+
declare class NoopSpanProcessor implements SpanProcessor {
|
|
70
|
+
forceFlush(): Promise<void>;
|
|
71
|
+
onStart(_span: Span): void;
|
|
72
|
+
onEnd(_span: ReadableSpan): void;
|
|
73
|
+
shutdown(): Promise<void>;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=core.d.ts.map
|
|
76
|
+
//#endregion
|
|
77
|
+
export { NoopSpanProcessor, createSpanProcessor, enableTelemetryDebug, flushTelemetry, getRecommendedStrategy, isTelemetryInitialized, setGlobalLogProcessor, setGlobalSpanProcessor, shutdownTelemetry, withTelemetryFlush };
|
|
78
|
+
//# sourceMappingURL=core--quSp5Qr.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core--quSp5Qr.d.mts","names":[],"sources":["../src/instrumentation/core.ts"],"sourcesContent":[],"mappings":";;;;;;;AAgCA;AAAmC,iBAAnB,mBAAA,CAAmB,QAAA,EACxB,YADwB,EAAA,OAAA,EAEzB,oBAFyB,CAAA,EAGhC,aAHgC;;;;AAGnB,iBAkBA,sBAAA,CAlBA,WAAA,EAAA,QAAA,GAAA,QAAA,GAAA,MAAA,GAAA,QAAA,CAAA,EAoBb,qBApBa;AAkBhB;AAiBA;AAQA;AAOgB,iBAfA,sBAAA,CAesB,SAAA,EAfY,aAeZ,CAAA,EAAA,IAAA;AAsBtC;AA+CA;AA0BA;AAgBgB,iBAtHA,qBAAA,CAsHkB,SAAA,EAAA,OAAA,CAAA,EAAA,IAAA;;;;AACa,iBAhH/B,sBAAA,CAAA,CAgH+B,EAAA,OAAA;;;;AACA;AAa/C;;;;;;;AAAuD;;;;;;;iBAxGjC,cAAA,sBAAmC;;;;iBA+CnC,iBAAA,CAAA,GAAqB;;;;iBA0B3B,oBAAA,CAAA;;;;;;;;;;;;;iBAgBA,qDACE,6BAA6B,QAAQ,mBAC5C,6BAA6B,QAAQ;;;;cAanC,iBAAA,YAA6B;gBAC3B;iBAIC;eAIF;cAID"}
|