@geekmidas/telescope 10.0.0-alpha.2 → 10.0.0-alpha.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{MetricsAggregator-4SqelGcG.d.cts → MetricsAggregator-BxBLQUPj.d.cts} +3 -6
- package/dist/MetricsAggregator-BxBLQUPj.d.cts.map +1 -0
- package/dist/{MetricsAggregator-DZrW8ls6.d.mts → MetricsAggregator-j9wmZ0K_.d.mts} +3 -6
- package/dist/MetricsAggregator-j9wmZ0K_.d.mts.map +1 -0
- package/dist/{Telescope-D4nmwDRA.d.cts → Telescope-BcrWTaar.d.mts} +4 -7
- package/dist/Telescope-BcrWTaar.d.mts.map +1 -0
- package/dist/{Telescope-Dl6VSfxd.d.mts → Telescope-DnCMZT7V.d.cts} +4 -7
- package/dist/Telescope-DnCMZT7V.d.cts.map +1 -0
- package/dist/Telescope.cjs +385 -4
- package/dist/Telescope.cjs.map +1 -0
- package/dist/Telescope.d.cts +1 -3
- package/dist/Telescope.d.mts +1 -3
- package/dist/Telescope.mjs +384 -4
- package/dist/Telescope.mjs.map +1 -0
- package/dist/adapters/index.d.cts +2 -2
- package/dist/adapters/index.d.mts +2 -2
- package/dist/adapters/index.mjs +1 -0
- package/dist/adapters/lambda.cjs +9 -10
- package/dist/adapters/lambda.cjs.map +1 -1
- package/dist/adapters/lambda.d.cts +9 -13
- package/dist/adapters/lambda.d.cts.map +1 -1
- package/dist/adapters/lambda.d.mts +9 -13
- package/dist/adapters/lambda.d.mts.map +1 -1
- package/dist/adapters/lambda.mjs +3 -4
- package/dist/adapters/lambda.mjs.map +1 -1
- package/dist/adapters/middy.cjs +236 -4
- package/dist/adapters/middy.cjs.map +1 -0
- package/dist/adapters/middy.d.cts +60 -5
- package/dist/adapters/middy.d.cts.map +1 -0
- package/dist/adapters/middy.d.mts +60 -5
- package/dist/adapters/middy.d.mts.map +1 -0
- package/dist/adapters/middy.mjs +234 -3
- package/dist/adapters/middy.mjs.map +1 -0
- package/dist/adapters/types.d.cts +162 -2
- package/dist/adapters/types.d.cts.map +1 -0
- package/dist/adapters/types.d.mts +162 -2
- package/dist/adapters/types.d.mts.map +1 -0
- package/dist/adapters/types.mjs +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 +3 -4
- package/dist/index.cjs +8 -9
- package/dist/index.d.cts +5 -6
- package/dist/index.d.mts +5 -6
- package/dist/index.mjs +5 -7
- package/dist/instrumentation/core.cjs +147 -11
- package/dist/instrumentation/core.cjs.map +1 -0
- package/dist/instrumentation/core.d.cts +74 -3
- package/dist/instrumentation/core.d.cts.map +1 -0
- package/dist/instrumentation/core.d.mts +74 -3
- package/dist/instrumentation/core.d.mts.map +1 -0
- package/dist/instrumentation/core.mjs +137 -2
- package/dist/instrumentation/core.mjs.map +1 -0
- package/dist/instrumentation/hono.cjs +134 -6
- package/dist/instrumentation/hono.cjs.map +1 -0
- package/dist/instrumentation/hono.d.cts +67 -2
- package/dist/instrumentation/hono.d.cts.map +1 -0
- package/dist/instrumentation/hono.d.mts +67 -2
- package/dist/instrumentation/hono.d.mts.map +1 -0
- package/dist/instrumentation/hono.mjs +130 -3
- package/dist/instrumentation/hono.mjs.map +1 -0
- package/dist/instrumentation/http.cjs +164 -11
- package/dist/instrumentation/http.cjs.map +1 -0
- package/dist/instrumentation/http.d.cts +103 -2
- package/dist/instrumentation/http.d.cts.map +1 -0
- package/dist/instrumentation/http.d.mts +103 -2
- package/dist/instrumentation/http.d.mts.map +1 -0
- package/dist/instrumentation/http.mjs +154 -2
- package/dist/instrumentation/http.mjs.map +1 -0
- package/dist/instrumentation/index.cjs +47 -47
- package/dist/instrumentation/index.d.cts +9 -9
- package/dist/instrumentation/index.d.mts +9 -9
- package/dist/instrumentation/index.mjs +8 -9
- package/dist/instrumentation/middleware.cjs +162 -6
- package/dist/instrumentation/middleware.cjs.map +1 -0
- package/dist/instrumentation/middleware.d.cts +70 -2
- package/dist/instrumentation/middleware.d.cts.map +1 -0
- package/dist/instrumentation/middleware.d.mts +70 -2
- package/dist/instrumentation/middleware.d.mts.map +1 -0
- package/dist/instrumentation/middleware.mjs +158 -3
- package/dist/instrumentation/middleware.mjs.map +1 -0
- package/dist/instrumentation/otel.cjs +137 -3
- package/dist/instrumentation/otel.cjs.map +1 -0
- package/dist/instrumentation/otel.d.cts +97 -2
- package/dist/instrumentation/otel.d.cts.map +1 -0
- package/dist/instrumentation/otel.d.mts +97 -2
- package/dist/instrumentation/otel.d.mts.map +1 -0
- package/dist/instrumentation/otel.mjs +136 -3
- package/dist/instrumentation/otel.mjs.map +1 -0
- package/dist/instrumentation/setup.cjs +100 -4
- package/dist/instrumentation/setup.cjs.map +1 -0
- package/dist/instrumentation/setup.d.cts +83 -3
- package/dist/instrumentation/setup.d.cts.map +1 -0
- package/dist/instrumentation/setup.d.mts +83 -3
- package/dist/instrumentation/setup.d.mts.map +1 -0
- package/dist/instrumentation/setup.mjs +98 -3
- package/dist/instrumentation/setup.mjs.map +1 -0
- package/dist/instrumentation/tracing.cjs +114 -10
- package/dist/instrumentation/tracing.cjs.map +1 -0
- package/dist/instrumentation/tracing.d.cts +49 -2
- package/dist/instrumentation/tracing.d.cts.map +1 -0
- package/dist/instrumentation/tracing.d.mts +49 -2
- package/dist/instrumentation/tracing.d.mts.map +1 -0
- package/dist/instrumentation/tracing.mjs +105 -2
- package/dist/instrumentation/tracing.mjs.map +1 -0
- package/dist/logger/console.cjs +18 -12
- package/dist/logger/console.cjs.map +1 -1
- package/dist/logger/console.d.cts +7 -10
- package/dist/logger/console.d.cts.map +1 -1
- package/dist/logger/console.d.mts +7 -10
- package/dist/logger/console.d.mts.map +1 -1
- package/dist/logger/console.mjs +17 -11
- package/dist/logger/console.mjs.map +1 -1
- package/dist/logger/pino.cjs +6 -5
- package/dist/logger/pino.cjs.map +1 -1
- package/dist/logger/pino.d.cts +6 -10
- package/dist/logger/pino.d.cts.map +1 -1
- package/dist/logger/pino.d.mts +6 -10
- package/dist/logger/pino.d.mts.map +1 -1
- package/dist/logger/pino.mjs +2 -3
- package/dist/logger/pino.mjs.map +1 -1
- package/dist/metrics/MetricsAggregator.cjs +354 -2
- package/dist/metrics/MetricsAggregator.cjs.map +1 -0
- package/dist/metrics/MetricsAggregator.d.cts +1 -2
- package/dist/metrics/MetricsAggregator.d.mts +1 -2
- package/dist/metrics/MetricsAggregator.mjs +353 -2
- package/dist/metrics/MetricsAggregator.mjs.map +1 -0
- package/dist/metrics/index.cjs +3 -4
- package/dist/metrics/index.d.cts +2 -4
- package/dist/metrics/index.d.mts +2 -4
- package/dist/metrics/index.mjs +2 -4
- package/dist/metrics/storage/InMemoryMetricsStorage.cjs +240 -3
- package/dist/metrics/storage/InMemoryMetricsStorage.cjs.map +1 -0
- package/dist/metrics/storage/InMemoryMetricsStorage.d.cts +43 -4
- package/dist/metrics/storage/InMemoryMetricsStorage.d.cts.map +1 -0
- package/dist/metrics/storage/InMemoryMetricsStorage.d.mts +43 -4
- package/dist/metrics/storage/InMemoryMetricsStorage.d.mts.map +1 -0
- package/dist/metrics/storage/InMemoryMetricsStorage.mjs +239 -3
- package/dist/metrics/storage/InMemoryMetricsStorage.mjs.map +1 -0
- package/dist/metrics/storage/MetricsStorage.cjs +0 -1
- package/dist/metrics/storage/MetricsStorage.d.cts +56 -3
- package/dist/metrics/storage/MetricsStorage.d.cts.map +1 -0
- package/dist/metrics/storage/MetricsStorage.d.mts +56 -3
- package/dist/metrics/storage/MetricsStorage.d.mts.map +1 -0
- 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 +4 -5
- package/dist/metrics/storage/types.cjs +34 -2
- package/dist/metrics/storage/types.cjs.map +1 -0
- package/dist/metrics/storage/types.d.cts +207 -2
- package/dist/metrics/storage/types.d.cts.map +1 -0
- package/dist/metrics/storage/types.d.mts +207 -2
- package/dist/metrics/storage/types.d.mts.map +1 -0
- package/dist/metrics/storage/types.mjs +33 -2
- package/dist/metrics/storage/types.mjs.map +1 -0
- package/dist/otlp/hono.cjs +9 -15
- package/dist/otlp/hono.cjs.map +1 -1
- package/dist/otlp/hono.d.cts +3 -13
- package/dist/otlp/hono.d.cts.map +1 -1
- package/dist/otlp/hono.d.mts +3 -13
- package/dist/otlp/hono.d.mts.map +1 -1
- package/dist/otlp/hono.mjs +5 -11
- package/dist/otlp/hono.mjs.map +1 -1
- package/dist/otlp/index.cjs +11 -11
- package/dist/otlp/index.d.cts +4 -7
- package/dist/otlp/index.d.mts +4 -7
- package/dist/otlp/index.mjs +4 -5
- package/dist/otlp/receiver.cjs +88 -4
- package/dist/otlp/receiver.cjs.map +1 -0
- package/dist/otlp/receiver.d.cts +59 -7
- package/dist/otlp/receiver.d.cts.map +1 -0
- package/dist/otlp/receiver.d.mts +59 -7
- package/dist/otlp/receiver.d.mts.map +1 -0
- package/dist/otlp/receiver.mjs +87 -4
- package/dist/otlp/receiver.mjs.map +1 -0
- package/dist/otlp/transformer.cjs +214 -5
- package/dist/otlp/transformer.cjs.map +1 -0
- package/dist/otlp/transformer.d.cts +1 -3
- package/dist/otlp/transformer.d.mts +1 -3
- package/dist/otlp/transformer.mjs +211 -3
- package/dist/otlp/transformer.mjs.map +1 -0
- package/dist/otlp/types.cjs +57 -5
- package/dist/otlp/types.cjs.map +1 -0
- package/dist/otlp/types.d.cts +1 -1
- package/dist/otlp/types.d.mts +1 -1
- package/dist/otlp/types.mjs +53 -2
- package/dist/otlp/types.mjs.map +1 -0
- package/dist/redact.cjs +84 -3
- package/dist/redact.cjs.map +1 -0
- package/dist/redact.d.cts +4 -8
- package/dist/redact.d.cts.map +1 -1
- package/dist/redact.d.mts +4 -8
- package/dist/redact.d.mts.map +1 -1
- package/dist/redact.mjs +80 -2
- package/dist/redact.mjs.map +1 -0
- package/dist/{chunk-CUT6urMc.cjs → rolldown-runtime-VH7oDXx4.cjs} +8 -10
- package/dist/server/hono.cjs +24 -33
- package/dist/server/hono.cjs.map +1 -1
- package/dist/server/hono.d.cts +10 -13
- package/dist/server/hono.d.cts.map +1 -1
- package/dist/server/hono.d.mts +10 -13
- package/dist/server/hono.d.mts.map +1 -1
- package/dist/server/hono.mjs +22 -31
- package/dist/server/hono.mjs.map +1 -1
- package/dist/storage/kysely.cjs +34 -32
- package/dist/storage/kysely.cjs.map +1 -1
- package/dist/storage/kysely.d.cts +8 -12
- package/dist/storage/kysely.d.cts.map +1 -1
- package/dist/storage/kysely.d.mts +8 -12
- package/dist/storage/kysely.d.mts.map +1 -1
- package/dist/storage/kysely.mjs +33 -31
- package/dist/storage/kysely.mjs.map +1 -1
- package/dist/storage/memory.cjs +122 -2
- package/dist/storage/memory.cjs.map +1 -0
- package/dist/storage/memory.d.cts +36 -3
- package/dist/storage/memory.d.cts.map +1 -0
- package/dist/storage/memory.d.mts +36 -3
- package/dist/storage/memory.d.mts.map +1 -0
- package/dist/storage/memory.mjs +121 -2
- package/dist/storage/memory.mjs.map +1 -0
- package/dist/{transformer-CTGsaVfV.d.mts → transformer-BBBXCjHP.d.mts} +4 -8
- package/dist/transformer-BBBXCjHP.d.mts.map +1 -0
- package/dist/{transformer-ICEbxpFf.d.cts → transformer-DlESim6Q.d.cts} +4 -8
- package/dist/transformer-DlESim6Q.d.cts.map +1 -0
- package/dist/{types-CmOB7CLO.d.cts → types-DVETVdpa.d.cts} +6 -7
- package/dist/types-DVETVdpa.d.cts.map +1 -0
- package/dist/{types-DBc0q5KD.d.mts → types-DVETVdpa.d.mts} +6 -7
- package/dist/types-DVETVdpa.d.mts.map +1 -0
- package/dist/{types-B1EIa_cQ.d.mts → types-a9Vistj1.d.cts} +2 -3
- package/dist/types-a9Vistj1.d.cts.map +1 -0
- package/dist/{types-l7Rlb5Mg.d.cts → types-a9Vistj1.d.mts} +2 -3
- package/dist/types-a9Vistj1.d.mts.map +1 -0
- package/dist/types.d.cts +1 -1
- package/dist/types.d.mts +1 -1
- package/dist/types.mjs +1 -0
- package/dist/ui-assets.cjs +31 -4
- package/dist/ui-assets.cjs.map +1 -0
- package/dist/ui-assets.d.cts +4 -6
- package/dist/ui-assets.d.cts.map +1 -1
- package/dist/ui-assets.d.mts +4 -6
- package/dist/ui-assets.d.mts.map +1 -1
- package/dist/ui-assets.mjs +28 -2
- package/dist/ui-assets.mjs.map +1 -0
- package/package.json +39 -37
- package/dist/InMemoryMetricsStorage-BbKCL3YL.d.mts +0 -47
- package/dist/InMemoryMetricsStorage-BbKCL3YL.d.mts.map +0 -1
- package/dist/InMemoryMetricsStorage-C4drxT7G.mjs +0 -247
- package/dist/InMemoryMetricsStorage-C4drxT7G.mjs.map +0 -1
- package/dist/InMemoryMetricsStorage-D0njWUSi.cjs +0 -252
- package/dist/InMemoryMetricsStorage-D0njWUSi.cjs.map +0 -1
- package/dist/InMemoryMetricsStorage-TvPdZjL0.d.cts +0 -47
- package/dist/InMemoryMetricsStorage-TvPdZjL0.d.cts.map +0 -1
- package/dist/MetricsAggregator-4SqelGcG.d.cts.map +0 -1
- package/dist/MetricsAggregator-B7lUICdH.cjs +0 -363
- package/dist/MetricsAggregator-B7lUICdH.cjs.map +0 -1
- package/dist/MetricsAggregator-DZrW8ls6.d.mts.map +0 -1
- package/dist/MetricsAggregator-S3DQWNas.mjs +0 -357
- package/dist/MetricsAggregator-S3DQWNas.mjs.map +0 -1
- package/dist/MetricsStorage-B86e4131.d.cts +0 -60
- package/dist/MetricsStorage-B86e4131.d.cts.map +0 -1
- package/dist/MetricsStorage-BWyP2_12.d.mts +0 -60
- package/dist/MetricsStorage-BWyP2_12.d.mts.map +0 -1
- package/dist/MetricsStorage-BypQXWiv.mjs +0 -0
- package/dist/MetricsStorage-Or8pVCe4.cjs +0 -0
- package/dist/Telescope-Cs3fv8jt.cjs +0 -395
- package/dist/Telescope-Cs3fv8jt.cjs.map +0 -1
- package/dist/Telescope-D4nmwDRA.d.cts.map +0 -1
- package/dist/Telescope-Dh5av3FC.mjs +0 -389
- package/dist/Telescope-Dh5av3FC.mjs.map +0 -1
- package/dist/Telescope-Dl6VSfxd.d.mts.map +0 -1
- package/dist/core--quSp5Qr.d.mts +0 -78
- package/dist/core--quSp5Qr.d.mts.map +0 -1
- package/dist/core-B4Jpia5H.d.cts +0 -78
- package/dist/core-B4Jpia5H.d.cts.map +0 -1
- package/dist/core-CtVHRJGv.cjs +0 -199
- package/dist/core-CtVHRJGv.cjs.map +0 -1
- package/dist/core-D6hJ6exL.mjs +0 -139
- package/dist/core-D6hJ6exL.mjs.map +0 -1
- package/dist/hono--uKQ7Jgi.d.mts +0 -71
- package/dist/hono--uKQ7Jgi.d.mts.map +0 -1
- package/dist/hono-Bw-ey6CT.mjs +0 -136
- package/dist/hono-Bw-ey6CT.mjs.map +0 -1
- package/dist/hono-CPHX7FAm.cjs +0 -160
- package/dist/hono-CPHX7FAm.cjs.map +0 -1
- package/dist/hono-CemCKU87.d.cts +0 -71
- package/dist/hono-CemCKU87.d.cts.map +0 -1
- package/dist/http-BIvr0YdI.mjs +0 -159
- package/dist/http-BIvr0YdI.mjs.map +0 -1
- package/dist/http-BiNtg85L.d.mts +0 -107
- package/dist/http-BiNtg85L.d.mts.map +0 -1
- package/dist/http-BsqmhurZ.cjs +0 -219
- package/dist/http-BsqmhurZ.cjs.map +0 -1
- package/dist/http-D1oTbfap.d.cts +0 -107
- package/dist/http-D1oTbfap.d.cts.map +0 -1
- package/dist/index-BL32-cvv.d.cts +0 -1
- package/dist/index-CsuikFeJ.d.mts +0 -1
- package/dist/memory--BK4iWiv.d.cts +0 -40
- package/dist/memory--BK4iWiv.d.cts.map +0 -1
- package/dist/memory-6S9H-IF5.mjs +0 -123
- package/dist/memory-6S9H-IF5.mjs.map +0 -1
- package/dist/memory-B0d_n1g5.cjs +0 -129
- package/dist/memory-B0d_n1g5.cjs.map +0 -1
- package/dist/memory-DCirEVFW.d.mts +0 -40
- package/dist/memory-DCirEVFW.d.mts.map +0 -1
- package/dist/metrics-D5YT-Rnq.mjs +0 -0
- package/dist/metrics-fhD3l3C3.cjs +0 -0
- package/dist/middleware-Bcq6XXGG.cjs +0 -184
- package/dist/middleware-Bcq6XXGG.cjs.map +0 -1
- package/dist/middleware-D1XEHvyy.mjs +0 -160
- package/dist/middleware-D1XEHvyy.mjs.map +0 -1
- package/dist/middleware-PeyS-9Ny.d.cts +0 -74
- package/dist/middleware-PeyS-9Ny.d.cts.map +0 -1
- package/dist/middleware-oHvo_ZgU.d.mts +0 -74
- package/dist/middleware-oHvo_ZgU.d.mts.map +0 -1
- package/dist/middy-B6Btl8XE.d.mts +0 -64
- package/dist/middy-B6Btl8XE.d.mts.map +0 -1
- package/dist/middy-Bq0defVg.d.cts +0 -64
- package/dist/middy-Bq0defVg.d.cts.map +0 -1
- package/dist/middy-DHWLmUAD.mjs +0 -236
- package/dist/middy-DHWLmUAD.mjs.map +0 -1
- package/dist/middy-DlWnZilH.cjs +0 -247
- package/dist/middy-DlWnZilH.cjs.map +0 -1
- package/dist/otel-B9bNoeZ2.mjs +0 -130
- package/dist/otel-B9bNoeZ2.mjs.map +0 -1
- package/dist/otel-Bk89b1lX.d.cts +0 -101
- package/dist/otel-Bk89b1lX.d.cts.map +0 -1
- package/dist/otel-BzjOtVxZ.cjs +0 -136
- package/dist/otel-BzjOtVxZ.cjs.map +0 -1
- package/dist/otel-lPMsM26e.d.mts +0 -101
- package/dist/otel-lPMsM26e.d.mts.map +0 -1
- package/dist/receiver-D46dfkYI.mjs +0 -89
- package/dist/receiver-D46dfkYI.mjs.map +0 -1
- package/dist/receiver-DLICx5uU.d.cts +0 -63
- package/dist/receiver-DLICx5uU.d.cts.map +0 -1
- package/dist/receiver-UeZT-H8u.d.mts +0 -63
- package/dist/receiver-UeZT-H8u.d.mts.map +0 -1
- package/dist/receiver-slCoAFat.cjs +0 -94
- package/dist/receiver-slCoAFat.cjs.map +0 -1
- package/dist/redact-BzkITCNW.mjs +0 -83
- package/dist/redact-BzkITCNW.mjs.map +0 -1
- package/dist/redact-DVaSSPZT.cjs +0 -95
- package/dist/redact-DVaSSPZT.cjs.map +0 -1
- package/dist/setup-Bkxm4g6b.d.mts +0 -87
- package/dist/setup-Bkxm4g6b.d.mts.map +0 -1
- package/dist/setup-D58N1f9O.d.cts +0 -87
- package/dist/setup-D58N1f9O.d.cts.map +0 -1
- package/dist/setup-DC9JMEYZ.mjs +0 -98
- package/dist/setup-DC9JMEYZ.mjs.map +0 -1
- package/dist/setup-DufxQpi9.cjs +0 -110
- package/dist/setup-DufxQpi9.cjs.map +0 -1
- package/dist/tracing-BX8uY2nR.d.cts +0 -53
- package/dist/tracing-BX8uY2nR.d.cts.map +0 -1
- package/dist/tracing-Bt1zWRlb.cjs +0 -167
- package/dist/tracing-Bt1zWRlb.cjs.map +0 -1
- package/dist/tracing-Cijm_5NI.mjs +0 -113
- package/dist/tracing-Cijm_5NI.mjs.map +0 -1
- package/dist/tracing-PnECEbEu.d.mts +0 -53
- package/dist/tracing-PnECEbEu.d.mts.map +0 -1
- package/dist/transformer-CFQ4WFk6.mjs +0 -215
- package/dist/transformer-CFQ4WFk6.mjs.map +0 -1
- package/dist/transformer-CTGsaVfV.d.mts.map +0 -1
- package/dist/transformer-Csl6fbgv.cjs +0 -232
- package/dist/transformer-Csl6fbgv.cjs.map +0 -1
- package/dist/transformer-ICEbxpFf.d.cts.map +0 -1
- package/dist/types-B1EIa_cQ.d.mts.map +0 -1
- package/dist/types-BMiHgsi4.cjs +0 -78
- package/dist/types-BMiHgsi4.cjs.map +0 -1
- package/dist/types-BRzW1NM8.d.cts +0 -166
- package/dist/types-BRzW1NM8.d.cts.map +0 -1
- package/dist/types-BS3Rx8Sk.d.cts +0 -209
- package/dist/types-BS3Rx8Sk.d.cts.map +0 -1
- package/dist/types-BzQ78Efw.d.mts +0 -166
- package/dist/types-BzQ78Efw.d.mts.map +0 -1
- package/dist/types-CbNGXnJE.d.mts +0 -209
- package/dist/types-CbNGXnJE.d.mts.map +0 -1
- package/dist/types-Cj59nqy7.mjs +0 -54
- package/dist/types-Cj59nqy7.mjs.map +0 -1
- package/dist/types-CmOB7CLO.d.cts.map +0 -1
- package/dist/types-DBc0q5KD.d.mts.map +0 -1
- package/dist/types-ZW-nfWf6.cjs +0 -40
- package/dist/types-ZW-nfWf6.cjs.map +0 -1
- package/dist/types-l7Rlb5Mg.d.cts.map +0 -1
- package/dist/types-ojhnLdwz.mjs +0 -34
- package/dist/types-ojhnLdwz.mjs.map +0 -1
- package/dist/ui-assets-BEXqOQLe.cjs +0 -48
- package/dist/ui-assets-BEXqOQLe.cjs.map +0 -1
- package/dist/ui-assets-BhTDUsrM.mjs +0 -30
- package/dist/ui-assets-BhTDUsrM.mjs.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"redact-DVaSSPZT.cjs","names":["TELESCOPE_SPECIFIC_PATHS: string[]","DEFAULT_REDACT_PATHS: string[]","BASE_REDACT_PATHS","options: TelescopeRedactOptions | undefined","paths: string[]","censor: string"],"sources":["../src/redact.ts"],"sourcesContent":["import { DEFAULT_REDACT_PATHS as BASE_REDACT_PATHS } from '@geekmidas/logger/redact';\nimport pinoRedact from '@pinojs/redact';\nimport type { TelescopeRedactOptions } from './types';\n\n/**\n * Telescope-specific redaction paths for HTTP request/response data.\n * These extend the base paths from @geekmidas/logger.\n */\nconst TELESCOPE_SPECIFIC_PATHS: string[] = [\n\t// Response headers (telescope-specific)\n\t'responseHeaders.set-cookie',\n\t'responseHeaders.Set-Cookie',\n\n\t// Request body fields\n\t'body.password',\n\t'body.token',\n\t'body.accessToken',\n\t'body.refreshToken',\n\t'body.apiKey',\n\t'body.secret',\n\t'body.creditCard',\n\t'body.cardNumber',\n\t'body.cvv',\n\t'body.ssn',\n\n\t// Nested body patterns (wildcards)\n\t'body.*.password',\n\t'body.*.token',\n\t'body.*.secret',\n\t'body.*.apiKey',\n\n\t// Response body fields\n\t'responseBody.password',\n\t'responseBody.token',\n\t'responseBody.accessToken',\n\t'responseBody.refreshToken',\n\t'responseBody.secret',\n\t'responseBody.*.password',\n\t'responseBody.*.token',\n\t'responseBody.*.secret',\n\n\t// Query parameters\n\t'query.token',\n\t'query.api_key',\n\t'query.apiKey',\n\t'query.access_token',\n\t'query.secret',\n\n\t// Log context patterns\n\t'context.password',\n\t'context.token',\n\t'context.secret',\n\t'context.apiKey',\n\t'context.*.password',\n\t'context.*.token',\n\t'context.*.secret',\n];\n\n/**\n * Combined default paths for Telescope redaction.\n * Includes base paths from @geekmidas/logger plus telescope-specific HTTP paths.\n */\nexport const DEFAULT_REDACT_PATHS: string[] = [\n\t...BASE_REDACT_PATHS,\n\t...TELESCOPE_SPECIFIC_PATHS,\n];\n\n/**\n * Type for the redactor function returned by @pinojs/redact\n */\nexport type Redactor = <T>(obj: T) => T;\n\n/**\n * Creates a redactor function based on the provided options.\n *\n * @param options - Redaction configuration\n * @returns A redactor function, or undefined if redaction is disabled\n *\n * @example\n * const redactor = createRedactor(true);\n * const safe = redactor({ headers: { authorization: 'Bearer secret' } });\n * // safe.headers.authorization === '[REDACTED]'\n */\nexport function createRedactor(\n\toptions: TelescopeRedactOptions | undefined,\n): Redactor | undefined {\n\tif (options === undefined || options === false) {\n\t\treturn undefined;\n\t}\n\n\tlet paths: string[];\n\tlet censor: string = '[REDACTED]';\n\n\tif (options === true) {\n\t\t// Use defaults only\n\t\tpaths = DEFAULT_REDACT_PATHS;\n\t} else if (Array.isArray(options)) {\n\t\t// Merge custom paths with defaults\n\t\tpaths = [...DEFAULT_REDACT_PATHS, ...options];\n\t} else {\n\t\t// Object configuration\n\t\tpaths = [...DEFAULT_REDACT_PATHS, ...options.paths];\n\t\tif (options.censor !== undefined) {\n\t\t\tcensor = options.censor;\n\t\t}\n\t}\n\n\t// Create the redactor with serialize: false to return objects\n\tconst redact = pinoRedact({\n\t\tpaths,\n\t\tcensor,\n\t\tserialize: false,\n\t});\n\n\treturn redact as Redactor;\n}\n"],"mappings":";;;;;;;;;AAQA,MAAMA,2BAAqC;CAE1C;CACA;CAGA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAGA;CACA;CACA;CACA;CAGA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAGA;CACA;CACA;CACA;CACA;CAGA;CACA;CACA;CACA;CACA;CACA;CACA;AACA;;;;;AAMD,MAAaC,uBAAiC,CAC7C,GAAGC,gDACH,GAAG,wBACH;;;;;;;;;;;;AAkBD,SAAgB,eACfC,SACuB;AACvB,KAAI,sBAAyB,YAAY,MACxC;CAGD,IAAIC;CACJ,IAAIC,SAAiB;AAErB,KAAI,YAAY,KAEf,SAAQ;UACE,MAAM,QAAQ,QAAQ,CAEhC,SAAQ,CAAC,GAAG,sBAAsB,GAAG,OAAQ;MACvC;AAEN,UAAQ,CAAC,GAAG,sBAAsB,GAAG,QAAQ,KAAM;AACnD,MAAI,QAAQ,kBACX,UAAS,QAAQ;CAElB;CAGD,MAAM,SAAS,6BAAW;EACzB;EACA;EACA,WAAW;CACX,EAAC;AAEF,QAAO;AACP"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { SpanProcessorStrategy } from "./types-BzQ78Efw.mjs";
|
|
2
|
-
|
|
3
|
-
//#region src/instrumentation/setup.d.ts
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Options for configuring telemetry
|
|
7
|
-
*/
|
|
8
|
-
interface TelemetryOptions {
|
|
9
|
-
/**
|
|
10
|
-
* Service name for resource identification
|
|
11
|
-
*/
|
|
12
|
-
serviceName: string;
|
|
13
|
-
/**
|
|
14
|
-
* Service version
|
|
15
|
-
*/
|
|
16
|
-
serviceVersion?: string;
|
|
17
|
-
/**
|
|
18
|
-
* OTLP endpoint URL (e.g., 'http://localhost:3000/__telescope/v1')
|
|
19
|
-
* If not provided, traces will be logged to console
|
|
20
|
-
*/
|
|
21
|
-
endpoint?: string;
|
|
22
|
-
/**
|
|
23
|
-
* Whether to instrument Pino for log correlation
|
|
24
|
-
* @default true
|
|
25
|
-
*/
|
|
26
|
-
instrumentPino?: boolean;
|
|
27
|
-
/**
|
|
28
|
-
* Whether to enable auto-instrumentation for common libraries
|
|
29
|
-
* (http, fetch, express, etc.)
|
|
30
|
-
* @default true
|
|
31
|
-
*/
|
|
32
|
-
autoInstrument?: boolean;
|
|
33
|
-
/**
|
|
34
|
-
* Enable debug logging for OTel SDK
|
|
35
|
-
* @default false
|
|
36
|
-
*/
|
|
37
|
-
debug?: boolean;
|
|
38
|
-
/**
|
|
39
|
-
* Additional resource attributes
|
|
40
|
-
*/
|
|
41
|
-
resourceAttributes?: Record<string, string>;
|
|
42
|
-
/**
|
|
43
|
-
* Headers to send with OTLP requests
|
|
44
|
-
*/
|
|
45
|
-
headers?: Record<string, string>;
|
|
46
|
-
/**
|
|
47
|
-
* Span processor strategy.
|
|
48
|
-
* - 'batch': Efficient batching for long-running servers (default)
|
|
49
|
-
* - 'simple': Immediate export for serverless environments (Lambda, Edge)
|
|
50
|
-
*
|
|
51
|
-
* If not specified, automatically selected based on environment detection.
|
|
52
|
-
*/
|
|
53
|
-
spanProcessorStrategy?: SpanProcessorStrategy;
|
|
54
|
-
/**
|
|
55
|
-
* Environment type for automatic configuration
|
|
56
|
-
* @default 'server'
|
|
57
|
-
*/
|
|
58
|
-
environment?: 'server' | 'lambda' | 'edge' | 'custom';
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Set up OpenTelemetry instrumentation.
|
|
62
|
-
* Call this BEFORE importing your application code.
|
|
63
|
-
*
|
|
64
|
-
* @example
|
|
65
|
-
* ```typescript
|
|
66
|
-
* // instrumentation.ts (create this file)
|
|
67
|
-
* import { setupTelemetry } from '@geekmidas/telescope/instrumentation';
|
|
68
|
-
*
|
|
69
|
-
* setupTelemetry({
|
|
70
|
-
* serviceName: 'my-api',
|
|
71
|
-
* endpoint: 'http://localhost:3000/__telescope/v1',
|
|
72
|
-
* });
|
|
73
|
-
*
|
|
74
|
-
* // Then in your entry point:
|
|
75
|
-
* // import './instrumentation';
|
|
76
|
-
* // import { app } from './app';
|
|
77
|
-
* ```
|
|
78
|
-
*/
|
|
79
|
-
declare function setupTelemetry(options: TelemetryOptions): void;
|
|
80
|
-
/**
|
|
81
|
-
* Shut down telemetry (for testing or graceful shutdown)
|
|
82
|
-
*/
|
|
83
|
-
declare function shutdownTelemetry(): Promise<void>;
|
|
84
|
-
//# sourceMappingURL=setup.d.ts.map
|
|
85
|
-
//#endregion
|
|
86
|
-
export { TelemetryOptions, setupTelemetry, shutdownTelemetry };
|
|
87
|
-
//# sourceMappingURL=setup-Bkxm4g6b.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup-Bkxm4g6b.d.mts","names":[],"sources":["../src/instrumentation/setup.ts"],"sourcesContent":[],"mappings":";;;;;;AA8BA;AAAiC,UAAhB,gBAAA,CAAgB;EAAA;;;EAqDa,WAAA,EAAA,MAAA;EA8B9B;AA+HhB;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA3KsB;;;;YAKX;;;;;;;;0BASc;;;;;;;;;;;;;;;;;;;;;;;;;;iBA8BT,cAAA,UAAwB;;;;iBA+HlB,iBAAA,CAAA,GAAqB"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { SpanProcessorStrategy } from "./types-BRzW1NM8.cjs";
|
|
2
|
-
|
|
3
|
-
//#region src/instrumentation/setup.d.ts
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Options for configuring telemetry
|
|
7
|
-
*/
|
|
8
|
-
interface TelemetryOptions {
|
|
9
|
-
/**
|
|
10
|
-
* Service name for resource identification
|
|
11
|
-
*/
|
|
12
|
-
serviceName: string;
|
|
13
|
-
/**
|
|
14
|
-
* Service version
|
|
15
|
-
*/
|
|
16
|
-
serviceVersion?: string;
|
|
17
|
-
/**
|
|
18
|
-
* OTLP endpoint URL (e.g., 'http://localhost:3000/__telescope/v1')
|
|
19
|
-
* If not provided, traces will be logged to console
|
|
20
|
-
*/
|
|
21
|
-
endpoint?: string;
|
|
22
|
-
/**
|
|
23
|
-
* Whether to instrument Pino for log correlation
|
|
24
|
-
* @default true
|
|
25
|
-
*/
|
|
26
|
-
instrumentPino?: boolean;
|
|
27
|
-
/**
|
|
28
|
-
* Whether to enable auto-instrumentation for common libraries
|
|
29
|
-
* (http, fetch, express, etc.)
|
|
30
|
-
* @default true
|
|
31
|
-
*/
|
|
32
|
-
autoInstrument?: boolean;
|
|
33
|
-
/**
|
|
34
|
-
* Enable debug logging for OTel SDK
|
|
35
|
-
* @default false
|
|
36
|
-
*/
|
|
37
|
-
debug?: boolean;
|
|
38
|
-
/**
|
|
39
|
-
* Additional resource attributes
|
|
40
|
-
*/
|
|
41
|
-
resourceAttributes?: Record<string, string>;
|
|
42
|
-
/**
|
|
43
|
-
* Headers to send with OTLP requests
|
|
44
|
-
*/
|
|
45
|
-
headers?: Record<string, string>;
|
|
46
|
-
/**
|
|
47
|
-
* Span processor strategy.
|
|
48
|
-
* - 'batch': Efficient batching for long-running servers (default)
|
|
49
|
-
* - 'simple': Immediate export for serverless environments (Lambda, Edge)
|
|
50
|
-
*
|
|
51
|
-
* If not specified, automatically selected based on environment detection.
|
|
52
|
-
*/
|
|
53
|
-
spanProcessorStrategy?: SpanProcessorStrategy;
|
|
54
|
-
/**
|
|
55
|
-
* Environment type for automatic configuration
|
|
56
|
-
* @default 'server'
|
|
57
|
-
*/
|
|
58
|
-
environment?: 'server' | 'lambda' | 'edge' | 'custom';
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Set up OpenTelemetry instrumentation.
|
|
62
|
-
* Call this BEFORE importing your application code.
|
|
63
|
-
*
|
|
64
|
-
* @example
|
|
65
|
-
* ```typescript
|
|
66
|
-
* // instrumentation.ts (create this file)
|
|
67
|
-
* import { setupTelemetry } from '@geekmidas/telescope/instrumentation';
|
|
68
|
-
*
|
|
69
|
-
* setupTelemetry({
|
|
70
|
-
* serviceName: 'my-api',
|
|
71
|
-
* endpoint: 'http://localhost:3000/__telescope/v1',
|
|
72
|
-
* });
|
|
73
|
-
*
|
|
74
|
-
* // Then in your entry point:
|
|
75
|
-
* // import './instrumentation';
|
|
76
|
-
* // import { app } from './app';
|
|
77
|
-
* ```
|
|
78
|
-
*/
|
|
79
|
-
declare function setupTelemetry(options: TelemetryOptions): void;
|
|
80
|
-
/**
|
|
81
|
-
* Shut down telemetry (for testing or graceful shutdown)
|
|
82
|
-
*/
|
|
83
|
-
declare function shutdownTelemetry(): Promise<void>;
|
|
84
|
-
//# sourceMappingURL=setup.d.ts.map
|
|
85
|
-
//#endregion
|
|
86
|
-
export { TelemetryOptions, setupTelemetry, shutdownTelemetry };
|
|
87
|
-
//# sourceMappingURL=setup-D58N1f9O.d.cts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup-D58N1f9O.d.cts","names":[],"sources":["../src/instrumentation/setup.ts"],"sourcesContent":[],"mappings":";;;;;;AA8BA;AAAiC,UAAhB,gBAAA,CAAgB;EAAA;;;EAqDa,WAAA,EAAA,MAAA;EA8B9B;AA+HhB;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA3KsB;;;;YAKX;;;;;;;;0BASc;;;;;;;;;;;;;;;;;;;;;;;;;;iBA8BT,cAAA,UAAwB;;;;iBA+HlB,iBAAA,CAAA,GAAqB"}
|
package/dist/setup-DC9JMEYZ.mjs
DELETED
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { createSpanProcessor, getRecommendedStrategy, setGlobalLogProcessor, setGlobalSpanProcessor } from "./core-D6hJ6exL.mjs";
|
|
2
|
-
import { DiagConsoleLogger, DiagLogLevel, diag } from "@opentelemetry/api";
|
|
3
|
-
import { getNodeAutoInstrumentations } from "@opentelemetry/auto-instrumentations-node";
|
|
4
|
-
import { OTLPLogExporter } from "@opentelemetry/exporter-logs-otlp-http";
|
|
5
|
-
import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-http";
|
|
6
|
-
import { PinoInstrumentation } from "@opentelemetry/instrumentation-pino";
|
|
7
|
-
import { Resource } from "@opentelemetry/resources";
|
|
8
|
-
import { BatchLogRecordProcessor, LoggerProvider } from "@opentelemetry/sdk-logs";
|
|
9
|
-
import { NodeSDK } from "@opentelemetry/sdk-node";
|
|
10
|
-
import { ConsoleSpanExporter } from "@opentelemetry/sdk-trace-node";
|
|
11
|
-
import { ATTR_SERVICE_NAME, ATTR_SERVICE_VERSION } from "@opentelemetry/semantic-conventions";
|
|
12
|
-
|
|
13
|
-
//#region src/instrumentation/setup.ts
|
|
14
|
-
let sdk = null;
|
|
15
|
-
/**
|
|
16
|
-
* Set up OpenTelemetry instrumentation.
|
|
17
|
-
* Call this BEFORE importing your application code.
|
|
18
|
-
*
|
|
19
|
-
* @example
|
|
20
|
-
* ```typescript
|
|
21
|
-
* // instrumentation.ts (create this file)
|
|
22
|
-
* import { setupTelemetry } from '@geekmidas/telescope/instrumentation';
|
|
23
|
-
*
|
|
24
|
-
* setupTelemetry({
|
|
25
|
-
* serviceName: 'my-api',
|
|
26
|
-
* endpoint: 'http://localhost:3000/__telescope/v1',
|
|
27
|
-
* });
|
|
28
|
-
*
|
|
29
|
-
* // Then in your entry point:
|
|
30
|
-
* // import './instrumentation';
|
|
31
|
-
* // import { app } from './app';
|
|
32
|
-
* ```
|
|
33
|
-
*/
|
|
34
|
-
function setupTelemetry(options) {
|
|
35
|
-
if (sdk) return;
|
|
36
|
-
const { serviceName, serviceVersion = "1.0.0", endpoint, instrumentPino = true, autoInstrument = true, debug = false, resourceAttributes = {}, headers = {}, spanProcessorStrategy, environment = "server" } = options;
|
|
37
|
-
if (debug) diag.setLogger(new DiagConsoleLogger(), DiagLogLevel.DEBUG);
|
|
38
|
-
const resource = new Resource({
|
|
39
|
-
[ATTR_SERVICE_NAME]: serviceName,
|
|
40
|
-
[ATTR_SERVICE_VERSION]: serviceVersion,
|
|
41
|
-
...resourceAttributes
|
|
42
|
-
});
|
|
43
|
-
const instrumentations = [];
|
|
44
|
-
if (instrumentPino) instrumentations.push(new PinoInstrumentation({ logHook: (span, record) => {
|
|
45
|
-
record.trace_id = span.spanContext().traceId;
|
|
46
|
-
record.span_id = span.spanContext().spanId;
|
|
47
|
-
record.trace_flags = span.spanContext().traceFlags;
|
|
48
|
-
} }));
|
|
49
|
-
if (autoInstrument) instrumentations.push(getNodeAutoInstrumentations({
|
|
50
|
-
"@opentelemetry/instrumentation-fs": { enabled: false },
|
|
51
|
-
"@opentelemetry/instrumentation-http": { ignoreIncomingRequestHook: (request) => {
|
|
52
|
-
const path = request.url || "";
|
|
53
|
-
return path.includes("/__health") || path.includes("/__telescope") || path.includes("/favicon");
|
|
54
|
-
} }
|
|
55
|
-
}));
|
|
56
|
-
let traceExporter;
|
|
57
|
-
if (endpoint) traceExporter = new OTLPTraceExporter({
|
|
58
|
-
url: `${endpoint}/traces`,
|
|
59
|
-
headers
|
|
60
|
-
});
|
|
61
|
-
else traceExporter = new ConsoleSpanExporter();
|
|
62
|
-
const strategy = spanProcessorStrategy ?? getRecommendedStrategy(environment);
|
|
63
|
-
const spanProcessor = createSpanProcessor(traceExporter, { strategy });
|
|
64
|
-
setGlobalSpanProcessor(spanProcessor);
|
|
65
|
-
sdk = new NodeSDK({
|
|
66
|
-
resource,
|
|
67
|
-
traceExporter,
|
|
68
|
-
spanProcessors: [spanProcessor],
|
|
69
|
-
instrumentations
|
|
70
|
-
});
|
|
71
|
-
if (endpoint) {
|
|
72
|
-
const logExporter = new OTLPLogExporter({
|
|
73
|
-
url: `${endpoint}/logs`,
|
|
74
|
-
headers
|
|
75
|
-
});
|
|
76
|
-
const loggerProvider = new LoggerProvider({ resource });
|
|
77
|
-
const logProcessor = new BatchLogRecordProcessor(logExporter);
|
|
78
|
-
loggerProvider.addLogRecordProcessor(logProcessor);
|
|
79
|
-
setGlobalLogProcessor(logProcessor);
|
|
80
|
-
}
|
|
81
|
-
sdk.start();
|
|
82
|
-
process.on("SIGTERM", () => {
|
|
83
|
-
sdk?.shutdown().then(() => {}).catch((_error) => {}).finally(() => process.exit(0));
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Shut down telemetry (for testing or graceful shutdown)
|
|
88
|
-
*/
|
|
89
|
-
async function shutdownTelemetry() {
|
|
90
|
-
if (sdk) {
|
|
91
|
-
await sdk.shutdown();
|
|
92
|
-
sdk = null;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
//#endregion
|
|
97
|
-
export { setupTelemetry, shutdownTelemetry };
|
|
98
|
-
//# sourceMappingURL=setup-DC9JMEYZ.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup-DC9JMEYZ.mjs","names":["sdk: NodeSDK | null","options: TelemetryOptions","traceExporter: SpanExporter"],"sources":["../src/instrumentation/setup.ts"],"sourcesContent":["import { DiagConsoleLogger, DiagLogLevel, diag } from '@opentelemetry/api';\nimport { getNodeAutoInstrumentations } from '@opentelemetry/auto-instrumentations-node';\nimport { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-http';\nimport { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';\nimport { PinoInstrumentation } from '@opentelemetry/instrumentation-pino';\nimport { Resource } from '@opentelemetry/resources';\nimport {\n\tBatchLogRecordProcessor,\n\tLoggerProvider,\n} from '@opentelemetry/sdk-logs';\nimport { NodeSDK } from '@opentelemetry/sdk-node';\nimport {\n\tConsoleSpanExporter,\n\ttype SpanExporter,\n} from '@opentelemetry/sdk-trace-node';\nimport {\n\tATTR_SERVICE_NAME,\n\tATTR_SERVICE_VERSION,\n} from '@opentelemetry/semantic-conventions';\nimport type { SpanProcessorStrategy } from '../adapters/types';\nimport {\n\tcreateSpanProcessor,\n\tgetRecommendedStrategy,\n\tsetGlobalLogProcessor,\n\tsetGlobalSpanProcessor,\n} from './core';\n\n/**\n * Options for configuring telemetry\n */\nexport interface TelemetryOptions {\n\t/**\n\t * Service name for resource identification\n\t */\n\tserviceName: string;\n\n\t/**\n\t * Service version\n\t */\n\tserviceVersion?: string;\n\n\t/**\n\t * OTLP endpoint URL (e.g., 'http://localhost:3000/__telescope/v1')\n\t * If not provided, traces will be logged to console\n\t */\n\tendpoint?: string;\n\n\t/**\n\t * Whether to instrument Pino for log correlation\n\t * @default true\n\t */\n\tinstrumentPino?: boolean;\n\n\t/**\n\t * Whether to enable auto-instrumentation for common libraries\n\t * (http, fetch, express, etc.)\n\t * @default true\n\t */\n\tautoInstrument?: boolean;\n\n\t/**\n\t * Enable debug logging for OTel SDK\n\t * @default false\n\t */\n\tdebug?: boolean;\n\n\t/**\n\t * Additional resource attributes\n\t */\n\tresourceAttributes?: Record<string, string>;\n\n\t/**\n\t * Headers to send with OTLP requests\n\t */\n\theaders?: Record<string, string>;\n\n\t/**\n\t * Span processor strategy.\n\t * - 'batch': Efficient batching for long-running servers (default)\n\t * - 'simple': Immediate export for serverless environments (Lambda, Edge)\n\t *\n\t * If not specified, automatically selected based on environment detection.\n\t */\n\tspanProcessorStrategy?: SpanProcessorStrategy;\n\n\t/**\n\t * Environment type for automatic configuration\n\t * @default 'server'\n\t */\n\tenvironment?: 'server' | 'lambda' | 'edge' | 'custom';\n}\n\nlet sdk: NodeSDK | null = null;\n\n/**\n * Set up OpenTelemetry instrumentation.\n * Call this BEFORE importing your application code.\n *\n * @example\n * ```typescript\n * // instrumentation.ts (create this file)\n * import { setupTelemetry } from '@geekmidas/telescope/instrumentation';\n *\n * setupTelemetry({\n * serviceName: 'my-api',\n * endpoint: 'http://localhost:3000/__telescope/v1',\n * });\n *\n * // Then in your entry point:\n * // import './instrumentation';\n * // import { app } from './app';\n * ```\n */\nexport function setupTelemetry(options: TelemetryOptions): void {\n\tif (sdk) {\n\t\treturn;\n\t}\n\n\tconst {\n\t\tserviceName,\n\t\tserviceVersion = '1.0.0',\n\t\tendpoint,\n\t\tinstrumentPino = true,\n\t\tautoInstrument = true,\n\t\tdebug = false,\n\t\tresourceAttributes = {},\n\t\theaders = {},\n\t\tspanProcessorStrategy,\n\t\tenvironment = 'server',\n\t} = options;\n\n\t// Enable debug logging if requested\n\tif (debug) {\n\t\tdiag.setLogger(new DiagConsoleLogger(), DiagLogLevel.DEBUG);\n\t}\n\n\t// Create resource\n\tconst resource = new Resource({\n\t\t[ATTR_SERVICE_NAME]: serviceName,\n\t\t[ATTR_SERVICE_VERSION]: serviceVersion,\n\t\t...resourceAttributes,\n\t});\n\n\t// Build instrumentations list\n\tconst instrumentations = [];\n\n\t// Add Pino instrumentation for log correlation\n\tif (instrumentPino) {\n\t\tinstrumentations.push(\n\t\t\tnew PinoInstrumentation({\n\t\t\t\t// Inject trace context into log records\n\t\t\t\tlogHook: (span, record) => {\n\t\t\t\t\trecord.trace_id = span.spanContext().traceId;\n\t\t\t\t\trecord.span_id = span.spanContext().spanId;\n\t\t\t\t\trecord.trace_flags = span.spanContext().traceFlags;\n\t\t\t\t},\n\t\t\t}),\n\t\t);\n\t}\n\n\t// Add auto-instrumentations for common libraries\n\tif (autoInstrument) {\n\t\tinstrumentations.push(\n\t\t\tgetNodeAutoInstrumentations({\n\t\t\t\t// Disable file system instrumentation (too noisy)\n\t\t\t\t'@opentelemetry/instrumentation-fs': { enabled: false },\n\t\t\t\t// Configure HTTP instrumentation\n\t\t\t\t'@opentelemetry/instrumentation-http': {\n\t\t\t\t\tignoreIncomingRequestHook: (request) => {\n\t\t\t\t\t\t// Ignore health checks and internal routes\n\t\t\t\t\t\tconst path = request.url || '';\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\tpath.includes('/__health') ||\n\t\t\t\t\t\t\tpath.includes('/__telescope') ||\n\t\t\t\t\t\t\tpath.includes('/favicon')\n\t\t\t\t\t\t);\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t);\n\t}\n\n\t// Create exporters\n\tlet traceExporter: SpanExporter;\n\tif (endpoint) {\n\t\ttraceExporter = new OTLPTraceExporter({\n\t\t\turl: `${endpoint}/traces`,\n\t\t\theaders,\n\t\t});\n\t} else {\n\t\t// Fall back to console exporter for debugging\n\t\ttraceExporter = new ConsoleSpanExporter();\n\t}\n\n\t// Determine span processor strategy\n\tconst strategy = spanProcessorStrategy ?? getRecommendedStrategy(environment);\n\tconst spanProcessor = createSpanProcessor(traceExporter, { strategy });\n\n\t// Register globally for flush operations\n\tsetGlobalSpanProcessor(spanProcessor);\n\n\t// Create and configure SDK\n\tsdk = new NodeSDK({\n\t\tresource,\n\t\ttraceExporter,\n\t\tspanProcessors: [spanProcessor],\n\t\tinstrumentations,\n\t});\n\n\t// Set up log exporter if endpoint is provided\n\tif (endpoint) {\n\t\tconst logExporter = new OTLPLogExporter({\n\t\t\turl: `${endpoint}/logs`,\n\t\t\theaders,\n\t\t});\n\n\t\tconst loggerProvider = new LoggerProvider({ resource });\n\t\tconst logProcessor = new BatchLogRecordProcessor(logExporter);\n\t\tloggerProvider.addLogRecordProcessor(logProcessor);\n\n\t\t// Register for flush operations\n\t\tsetGlobalLogProcessor(logProcessor);\n\t}\n\n\t// Start the SDK\n\tsdk.start();\n\n\t// Graceful shutdown\n\tprocess.on('SIGTERM', () => {\n\t\tsdk\n\t\t\t?.shutdown()\n\t\t\t.then(() => {})\n\t\t\t.catch((_error) => {})\n\t\t\t.finally(() => process.exit(0));\n\t});\n}\n\n/**\n * Shut down telemetry (for testing or graceful shutdown)\n */\nexport async function shutdownTelemetry(): Promise<void> {\n\tif (sdk) {\n\t\tawait sdk.shutdown();\n\t\tsdk = null;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;AA4FA,IAAIA,MAAsB;;;;;;;;;;;;;;;;;;;;AAqB1B,SAAgB,eAAeC,SAAiC;AAC/D,KAAI,IACH;CAGD,MAAM,EACL,aACA,iBAAiB,SACjB,UACA,iBAAiB,MACjB,iBAAiB,MACjB,QAAQ,OACR,qBAAqB,CAAE,GACvB,UAAU,CAAE,GACZ,uBACA,cAAc,UACd,GAAG;AAGJ,KAAI,MACH,MAAK,UAAU,IAAI,qBAAqB,aAAa,MAAM;CAI5D,MAAM,WAAW,IAAI,SAAS;GAC5B,oBAAoB;GACpB,uBAAuB;EACxB,GAAG;CACH;CAGD,MAAM,mBAAmB,CAAE;AAG3B,KAAI,eACH,kBAAiB,KAChB,IAAI,oBAAoB,EAEvB,SAAS,CAAC,MAAM,WAAW;AAC1B,SAAO,WAAW,KAAK,aAAa,CAAC;AACrC,SAAO,UAAU,KAAK,aAAa,CAAC;AACpC,SAAO,cAAc,KAAK,aAAa,CAAC;CACxC,EACD,GACD;AAIF,KAAI,eACH,kBAAiB,KAChB,4BAA4B;EAE3B,qCAAqC,EAAE,SAAS,MAAO;EAEvD,uCAAuC,EACtC,2BAA2B,CAAC,YAAY;GAEvC,MAAM,OAAO,QAAQ,OAAO;AAC5B,UACC,KAAK,SAAS,YAAY,IAC1B,KAAK,SAAS,eAAe,IAC7B,KAAK,SAAS,WAAW;EAE1B,EACD;CACD,EAAC,CACF;CAIF,IAAIC;AACJ,KAAI,SACH,iBAAgB,IAAI,kBAAkB;EACrC,MAAM,EAAE,SAAS;EACjB;CACA;KAGD,iBAAgB,IAAI;CAIrB,MAAM,WAAW,yBAAyB,uBAAuB,YAAY;CAC7E,MAAM,gBAAgB,oBAAoB,eAAe,EAAE,SAAU,EAAC;AAGtE,wBAAuB,cAAc;AAGrC,OAAM,IAAI,QAAQ;EACjB;EACA;EACA,gBAAgB,CAAC,aAAc;EAC/B;CACA;AAGD,KAAI,UAAU;EACb,MAAM,cAAc,IAAI,gBAAgB;GACvC,MAAM,EAAE,SAAS;GACjB;EACA;EAED,MAAM,iBAAiB,IAAI,eAAe,EAAE,SAAU;EACtD,MAAM,eAAe,IAAI,wBAAwB;AACjD,iBAAe,sBAAsB,aAAa;AAGlD,wBAAsB,aAAa;CACnC;AAGD,KAAI,OAAO;AAGX,SAAQ,GAAG,WAAW,MAAM;AAC3B,OACG,UAAU,CACX,KAAK,MAAM,CAAE,EAAC,CACd,MAAM,CAAC,WAAW,CAAE,EAAC,CACrB,QAAQ,MAAM,QAAQ,KAAK,EAAE,CAAC;CAChC,EAAC;AACF;;;;AAKD,eAAsB,oBAAmC;AACxD,KAAI,KAAK;AACR,QAAM,IAAI,UAAU;AACpB,QAAM;CACN;AACD"}
|
package/dist/setup-DufxQpi9.cjs
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
const require_chunk = require('./chunk-CUT6urMc.cjs');
|
|
2
|
-
const require_core = require('./core-CtVHRJGv.cjs');
|
|
3
|
-
const __opentelemetry_api = require_chunk.__toESM(require("@opentelemetry/api"));
|
|
4
|
-
const __opentelemetry_auto_instrumentations_node = require_chunk.__toESM(require("@opentelemetry/auto-instrumentations-node"));
|
|
5
|
-
const __opentelemetry_exporter_logs_otlp_http = require_chunk.__toESM(require("@opentelemetry/exporter-logs-otlp-http"));
|
|
6
|
-
const __opentelemetry_exporter_trace_otlp_http = require_chunk.__toESM(require("@opentelemetry/exporter-trace-otlp-http"));
|
|
7
|
-
const __opentelemetry_instrumentation_pino = require_chunk.__toESM(require("@opentelemetry/instrumentation-pino"));
|
|
8
|
-
const __opentelemetry_resources = require_chunk.__toESM(require("@opentelemetry/resources"));
|
|
9
|
-
const __opentelemetry_sdk_logs = require_chunk.__toESM(require("@opentelemetry/sdk-logs"));
|
|
10
|
-
const __opentelemetry_sdk_node = require_chunk.__toESM(require("@opentelemetry/sdk-node"));
|
|
11
|
-
const __opentelemetry_sdk_trace_node = require_chunk.__toESM(require("@opentelemetry/sdk-trace-node"));
|
|
12
|
-
const __opentelemetry_semantic_conventions = require_chunk.__toESM(require("@opentelemetry/semantic-conventions"));
|
|
13
|
-
|
|
14
|
-
//#region src/instrumentation/setup.ts
|
|
15
|
-
let sdk = null;
|
|
16
|
-
/**
|
|
17
|
-
* Set up OpenTelemetry instrumentation.
|
|
18
|
-
* Call this BEFORE importing your application code.
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```typescript
|
|
22
|
-
* // instrumentation.ts (create this file)
|
|
23
|
-
* import { setupTelemetry } from '@geekmidas/telescope/instrumentation';
|
|
24
|
-
*
|
|
25
|
-
* setupTelemetry({
|
|
26
|
-
* serviceName: 'my-api',
|
|
27
|
-
* endpoint: 'http://localhost:3000/__telescope/v1',
|
|
28
|
-
* });
|
|
29
|
-
*
|
|
30
|
-
* // Then in your entry point:
|
|
31
|
-
* // import './instrumentation';
|
|
32
|
-
* // import { app } from './app';
|
|
33
|
-
* ```
|
|
34
|
-
*/
|
|
35
|
-
function setupTelemetry(options) {
|
|
36
|
-
if (sdk) return;
|
|
37
|
-
const { serviceName, serviceVersion = "1.0.0", endpoint, instrumentPino = true, autoInstrument = true, debug = false, resourceAttributes = {}, headers = {}, spanProcessorStrategy, environment = "server" } = options;
|
|
38
|
-
if (debug) __opentelemetry_api.diag.setLogger(new __opentelemetry_api.DiagConsoleLogger(), __opentelemetry_api.DiagLogLevel.DEBUG);
|
|
39
|
-
const resource = new __opentelemetry_resources.Resource({
|
|
40
|
-
[__opentelemetry_semantic_conventions.ATTR_SERVICE_NAME]: serviceName,
|
|
41
|
-
[__opentelemetry_semantic_conventions.ATTR_SERVICE_VERSION]: serviceVersion,
|
|
42
|
-
...resourceAttributes
|
|
43
|
-
});
|
|
44
|
-
const instrumentations = [];
|
|
45
|
-
if (instrumentPino) instrumentations.push(new __opentelemetry_instrumentation_pino.PinoInstrumentation({ logHook: (span, record) => {
|
|
46
|
-
record.trace_id = span.spanContext().traceId;
|
|
47
|
-
record.span_id = span.spanContext().spanId;
|
|
48
|
-
record.trace_flags = span.spanContext().traceFlags;
|
|
49
|
-
} }));
|
|
50
|
-
if (autoInstrument) instrumentations.push((0, __opentelemetry_auto_instrumentations_node.getNodeAutoInstrumentations)({
|
|
51
|
-
"@opentelemetry/instrumentation-fs": { enabled: false },
|
|
52
|
-
"@opentelemetry/instrumentation-http": { ignoreIncomingRequestHook: (request) => {
|
|
53
|
-
const path = request.url || "";
|
|
54
|
-
return path.includes("/__health") || path.includes("/__telescope") || path.includes("/favicon");
|
|
55
|
-
} }
|
|
56
|
-
}));
|
|
57
|
-
let traceExporter;
|
|
58
|
-
if (endpoint) traceExporter = new __opentelemetry_exporter_trace_otlp_http.OTLPTraceExporter({
|
|
59
|
-
url: `${endpoint}/traces`,
|
|
60
|
-
headers
|
|
61
|
-
});
|
|
62
|
-
else traceExporter = new __opentelemetry_sdk_trace_node.ConsoleSpanExporter();
|
|
63
|
-
const strategy = spanProcessorStrategy ?? require_core.getRecommendedStrategy(environment);
|
|
64
|
-
const spanProcessor = require_core.createSpanProcessor(traceExporter, { strategy });
|
|
65
|
-
require_core.setGlobalSpanProcessor(spanProcessor);
|
|
66
|
-
sdk = new __opentelemetry_sdk_node.NodeSDK({
|
|
67
|
-
resource,
|
|
68
|
-
traceExporter,
|
|
69
|
-
spanProcessors: [spanProcessor],
|
|
70
|
-
instrumentations
|
|
71
|
-
});
|
|
72
|
-
if (endpoint) {
|
|
73
|
-
const logExporter = new __opentelemetry_exporter_logs_otlp_http.OTLPLogExporter({
|
|
74
|
-
url: `${endpoint}/logs`,
|
|
75
|
-
headers
|
|
76
|
-
});
|
|
77
|
-
const loggerProvider = new __opentelemetry_sdk_logs.LoggerProvider({ resource });
|
|
78
|
-
const logProcessor = new __opentelemetry_sdk_logs.BatchLogRecordProcessor(logExporter);
|
|
79
|
-
loggerProvider.addLogRecordProcessor(logProcessor);
|
|
80
|
-
require_core.setGlobalLogProcessor(logProcessor);
|
|
81
|
-
}
|
|
82
|
-
sdk.start();
|
|
83
|
-
process.on("SIGTERM", () => {
|
|
84
|
-
sdk?.shutdown().then(() => {}).catch((_error) => {}).finally(() => process.exit(0));
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Shut down telemetry (for testing or graceful shutdown)
|
|
89
|
-
*/
|
|
90
|
-
async function shutdownTelemetry() {
|
|
91
|
-
if (sdk) {
|
|
92
|
-
await sdk.shutdown();
|
|
93
|
-
sdk = null;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
//#endregion
|
|
98
|
-
Object.defineProperty(exports, 'setupTelemetry', {
|
|
99
|
-
enumerable: true,
|
|
100
|
-
get: function () {
|
|
101
|
-
return setupTelemetry;
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
Object.defineProperty(exports, 'shutdownTelemetry', {
|
|
105
|
-
enumerable: true,
|
|
106
|
-
get: function () {
|
|
107
|
-
return shutdownTelemetry;
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
//# sourceMappingURL=setup-DufxQpi9.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup-DufxQpi9.cjs","names":["sdk: NodeSDK | null","options: TelemetryOptions","DiagConsoleLogger","DiagLogLevel","Resource","ATTR_SERVICE_NAME","ATTR_SERVICE_VERSION","PinoInstrumentation","traceExporter: SpanExporter","OTLPTraceExporter","ConsoleSpanExporter","NodeSDK","OTLPLogExporter","LoggerProvider","BatchLogRecordProcessor"],"sources":["../src/instrumentation/setup.ts"],"sourcesContent":["import { DiagConsoleLogger, DiagLogLevel, diag } from '@opentelemetry/api';\nimport { getNodeAutoInstrumentations } from '@opentelemetry/auto-instrumentations-node';\nimport { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-http';\nimport { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';\nimport { PinoInstrumentation } from '@opentelemetry/instrumentation-pino';\nimport { Resource } from '@opentelemetry/resources';\nimport {\n\tBatchLogRecordProcessor,\n\tLoggerProvider,\n} from '@opentelemetry/sdk-logs';\nimport { NodeSDK } from '@opentelemetry/sdk-node';\nimport {\n\tConsoleSpanExporter,\n\ttype SpanExporter,\n} from '@opentelemetry/sdk-trace-node';\nimport {\n\tATTR_SERVICE_NAME,\n\tATTR_SERVICE_VERSION,\n} from '@opentelemetry/semantic-conventions';\nimport type { SpanProcessorStrategy } from '../adapters/types';\nimport {\n\tcreateSpanProcessor,\n\tgetRecommendedStrategy,\n\tsetGlobalLogProcessor,\n\tsetGlobalSpanProcessor,\n} from './core';\n\n/**\n * Options for configuring telemetry\n */\nexport interface TelemetryOptions {\n\t/**\n\t * Service name for resource identification\n\t */\n\tserviceName: string;\n\n\t/**\n\t * Service version\n\t */\n\tserviceVersion?: string;\n\n\t/**\n\t * OTLP endpoint URL (e.g., 'http://localhost:3000/__telescope/v1')\n\t * If not provided, traces will be logged to console\n\t */\n\tendpoint?: string;\n\n\t/**\n\t * Whether to instrument Pino for log correlation\n\t * @default true\n\t */\n\tinstrumentPino?: boolean;\n\n\t/**\n\t * Whether to enable auto-instrumentation for common libraries\n\t * (http, fetch, express, etc.)\n\t * @default true\n\t */\n\tautoInstrument?: boolean;\n\n\t/**\n\t * Enable debug logging for OTel SDK\n\t * @default false\n\t */\n\tdebug?: boolean;\n\n\t/**\n\t * Additional resource attributes\n\t */\n\tresourceAttributes?: Record<string, string>;\n\n\t/**\n\t * Headers to send with OTLP requests\n\t */\n\theaders?: Record<string, string>;\n\n\t/**\n\t * Span processor strategy.\n\t * - 'batch': Efficient batching for long-running servers (default)\n\t * - 'simple': Immediate export for serverless environments (Lambda, Edge)\n\t *\n\t * If not specified, automatically selected based on environment detection.\n\t */\n\tspanProcessorStrategy?: SpanProcessorStrategy;\n\n\t/**\n\t * Environment type for automatic configuration\n\t * @default 'server'\n\t */\n\tenvironment?: 'server' | 'lambda' | 'edge' | 'custom';\n}\n\nlet sdk: NodeSDK | null = null;\n\n/**\n * Set up OpenTelemetry instrumentation.\n * Call this BEFORE importing your application code.\n *\n * @example\n * ```typescript\n * // instrumentation.ts (create this file)\n * import { setupTelemetry } from '@geekmidas/telescope/instrumentation';\n *\n * setupTelemetry({\n * serviceName: 'my-api',\n * endpoint: 'http://localhost:3000/__telescope/v1',\n * });\n *\n * // Then in your entry point:\n * // import './instrumentation';\n * // import { app } from './app';\n * ```\n */\nexport function setupTelemetry(options: TelemetryOptions): void {\n\tif (sdk) {\n\t\treturn;\n\t}\n\n\tconst {\n\t\tserviceName,\n\t\tserviceVersion = '1.0.0',\n\t\tendpoint,\n\t\tinstrumentPino = true,\n\t\tautoInstrument = true,\n\t\tdebug = false,\n\t\tresourceAttributes = {},\n\t\theaders = {},\n\t\tspanProcessorStrategy,\n\t\tenvironment = 'server',\n\t} = options;\n\n\t// Enable debug logging if requested\n\tif (debug) {\n\t\tdiag.setLogger(new DiagConsoleLogger(), DiagLogLevel.DEBUG);\n\t}\n\n\t// Create resource\n\tconst resource = new Resource({\n\t\t[ATTR_SERVICE_NAME]: serviceName,\n\t\t[ATTR_SERVICE_VERSION]: serviceVersion,\n\t\t...resourceAttributes,\n\t});\n\n\t// Build instrumentations list\n\tconst instrumentations = [];\n\n\t// Add Pino instrumentation for log correlation\n\tif (instrumentPino) {\n\t\tinstrumentations.push(\n\t\t\tnew PinoInstrumentation({\n\t\t\t\t// Inject trace context into log records\n\t\t\t\tlogHook: (span, record) => {\n\t\t\t\t\trecord.trace_id = span.spanContext().traceId;\n\t\t\t\t\trecord.span_id = span.spanContext().spanId;\n\t\t\t\t\trecord.trace_flags = span.spanContext().traceFlags;\n\t\t\t\t},\n\t\t\t}),\n\t\t);\n\t}\n\n\t// Add auto-instrumentations for common libraries\n\tif (autoInstrument) {\n\t\tinstrumentations.push(\n\t\t\tgetNodeAutoInstrumentations({\n\t\t\t\t// Disable file system instrumentation (too noisy)\n\t\t\t\t'@opentelemetry/instrumentation-fs': { enabled: false },\n\t\t\t\t// Configure HTTP instrumentation\n\t\t\t\t'@opentelemetry/instrumentation-http': {\n\t\t\t\t\tignoreIncomingRequestHook: (request) => {\n\t\t\t\t\t\t// Ignore health checks and internal routes\n\t\t\t\t\t\tconst path = request.url || '';\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\tpath.includes('/__health') ||\n\t\t\t\t\t\t\tpath.includes('/__telescope') ||\n\t\t\t\t\t\t\tpath.includes('/favicon')\n\t\t\t\t\t\t);\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t}),\n\t\t);\n\t}\n\n\t// Create exporters\n\tlet traceExporter: SpanExporter;\n\tif (endpoint) {\n\t\ttraceExporter = new OTLPTraceExporter({\n\t\t\turl: `${endpoint}/traces`,\n\t\t\theaders,\n\t\t});\n\t} else {\n\t\t// Fall back to console exporter for debugging\n\t\ttraceExporter = new ConsoleSpanExporter();\n\t}\n\n\t// Determine span processor strategy\n\tconst strategy = spanProcessorStrategy ?? getRecommendedStrategy(environment);\n\tconst spanProcessor = createSpanProcessor(traceExporter, { strategy });\n\n\t// Register globally for flush operations\n\tsetGlobalSpanProcessor(spanProcessor);\n\n\t// Create and configure SDK\n\tsdk = new NodeSDK({\n\t\tresource,\n\t\ttraceExporter,\n\t\tspanProcessors: [spanProcessor],\n\t\tinstrumentations,\n\t});\n\n\t// Set up log exporter if endpoint is provided\n\tif (endpoint) {\n\t\tconst logExporter = new OTLPLogExporter({\n\t\t\turl: `${endpoint}/logs`,\n\t\t\theaders,\n\t\t});\n\n\t\tconst loggerProvider = new LoggerProvider({ resource });\n\t\tconst logProcessor = new BatchLogRecordProcessor(logExporter);\n\t\tloggerProvider.addLogRecordProcessor(logProcessor);\n\n\t\t// Register for flush operations\n\t\tsetGlobalLogProcessor(logProcessor);\n\t}\n\n\t// Start the SDK\n\tsdk.start();\n\n\t// Graceful shutdown\n\tprocess.on('SIGTERM', () => {\n\t\tsdk\n\t\t\t?.shutdown()\n\t\t\t.then(() => {})\n\t\t\t.catch((_error) => {})\n\t\t\t.finally(() => process.exit(0));\n\t});\n}\n\n/**\n * Shut down telemetry (for testing or graceful shutdown)\n */\nexport async function shutdownTelemetry(): Promise<void> {\n\tif (sdk) {\n\t\tawait sdk.shutdown();\n\t\tsdk = null;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;AA4FA,IAAIA,MAAsB;;;;;;;;;;;;;;;;;;;;AAqB1B,SAAgB,eAAeC,SAAiC;AAC/D,KAAI,IACH;CAGD,MAAM,EACL,aACA,iBAAiB,SACjB,UACA,iBAAiB,MACjB,iBAAiB,MACjB,QAAQ,OACR,qBAAqB,CAAE,GACvB,UAAU,CAAE,GACZ,uBACA,cAAc,UACd,GAAG;AAGJ,KAAI,MACH,0BAAK,UAAU,IAAIC,yCAAqBC,iCAAa,MAAM;CAI5D,MAAM,WAAW,IAAIC,mCAAS;GAC5BC,yDAAoB;GACpBC,4DAAuB;EACxB,GAAG;CACH;CAGD,MAAM,mBAAmB,CAAE;AAG3B,KAAI,eACH,kBAAiB,KAChB,IAAIC,yDAAoB,EAEvB,SAAS,CAAC,MAAM,WAAW;AAC1B,SAAO,WAAW,KAAK,aAAa,CAAC;AACrC,SAAO,UAAU,KAAK,aAAa,CAAC;AACpC,SAAO,cAAc,KAAK,aAAa,CAAC;CACxC,EACD,GACD;AAIF,KAAI,eACH,kBAAiB,KAChB,4EAA4B;EAE3B,qCAAqC,EAAE,SAAS,MAAO;EAEvD,uCAAuC,EACtC,2BAA2B,CAAC,YAAY;GAEvC,MAAM,OAAO,QAAQ,OAAO;AAC5B,UACC,KAAK,SAAS,YAAY,IAC1B,KAAK,SAAS,eAAe,IAC7B,KAAK,SAAS,WAAW;EAE1B,EACD;CACD,EAAC,CACF;CAIF,IAAIC;AACJ,KAAI,SACH,iBAAgB,IAAIC,2DAAkB;EACrC,MAAM,EAAE,SAAS;EACjB;CACA;KAGD,iBAAgB,IAAIC;CAIrB,MAAM,WAAW,yBAAyB,oCAAuB,YAAY;CAC7E,MAAM,gBAAgB,iCAAoB,eAAe,EAAE,SAAU,EAAC;AAGtE,qCAAuB,cAAc;AAGrC,OAAM,IAAIC,iCAAQ;EACjB;EACA;EACA,gBAAgB,CAAC,aAAc;EAC/B;CACA;AAGD,KAAI,UAAU;EACb,MAAM,cAAc,IAAIC,wDAAgB;GACvC,MAAM,EAAE,SAAS;GACjB;EACA;EAED,MAAM,iBAAiB,IAAIC,wCAAe,EAAE,SAAU;EACtD,MAAM,eAAe,IAAIC,iDAAwB;AACjD,iBAAe,sBAAsB,aAAa;AAGlD,qCAAsB,aAAa;CACnC;AAGD,KAAI,OAAO;AAGX,SAAQ,GAAG,WAAW,MAAM;AAC3B,OACG,UAAU,CACX,KAAK,MAAM,CAAE,EAAC,CACd,MAAM,CAAC,WAAW,CAAE,EAAC,CACrB,QAAQ,MAAM,QAAQ,KAAK,EAAE,CAAC;CAChC,EAAC;AACF;;;;AAKD,eAAsB,oBAAmC;AACxD,KAAI,KAAK;AACR,QAAM,IAAI,UAAU;AACpB,QAAM;CACN;AACD"}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { Attributes, Span } from "@opentelemetry/api";
|
|
2
|
-
|
|
3
|
-
//#region src/instrumentation/tracing.d.ts
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Get the currently active span
|
|
7
|
-
*/
|
|
8
|
-
declare function getActiveSpan(): Span | undefined;
|
|
9
|
-
/**
|
|
10
|
-
* Set attributes on the active span
|
|
11
|
-
*/
|
|
12
|
-
declare function setSpanAttributes(attributes: Attributes): void;
|
|
13
|
-
/**
|
|
14
|
-
* Create a new span as a child of the current span
|
|
15
|
-
*/
|
|
16
|
-
declare function createSpan(name: string, attributes?: Attributes): Span;
|
|
17
|
-
/**
|
|
18
|
-
* Execute a function within a new span context
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```typescript
|
|
22
|
-
* const result = await withSpan('processOrder', async (span) => {
|
|
23
|
-
* span.setAttribute('order.id', orderId);
|
|
24
|
-
* const order = await processOrder(orderId);
|
|
25
|
-
* return order;
|
|
26
|
-
* });
|
|
27
|
-
* ```
|
|
28
|
-
*/
|
|
29
|
-
declare function withSpan<T>(name: string, fn: (span: Span) => Promise<T>, attributes?: Attributes): Promise<T>;
|
|
30
|
-
/**
|
|
31
|
-
* Synchronous version of withSpan
|
|
32
|
-
*/
|
|
33
|
-
declare function withSpanSync<T>(name: string, fn: (span: Span) => T, attributes?: Attributes): T;
|
|
34
|
-
/**
|
|
35
|
-
* Get the current trace ID (useful for log correlation)
|
|
36
|
-
*/
|
|
37
|
-
declare function getTraceId(): string | undefined;
|
|
38
|
-
/**
|
|
39
|
-
* Get the current span ID
|
|
40
|
-
*/
|
|
41
|
-
declare function getSpanId(): string | undefined;
|
|
42
|
-
/**
|
|
43
|
-
* Record an exception on the current span
|
|
44
|
-
*/
|
|
45
|
-
declare function recordException(error: Error): void;
|
|
46
|
-
/**
|
|
47
|
-
* Add an event to the current span
|
|
48
|
-
*/
|
|
49
|
-
declare function addSpanEvent(name: string, attributes?: Attributes): void;
|
|
50
|
-
//# sourceMappingURL=tracing.d.ts.map
|
|
51
|
-
//#endregion
|
|
52
|
-
export { addSpanEvent, createSpan, getActiveSpan, getSpanId, getTraceId, recordException, setSpanAttributes, withSpan, withSpanSync };
|
|
53
|
-
//# sourceMappingURL=tracing-BX8uY2nR.d.cts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tracing-BX8uY2nR.d.cts","names":[],"sources":["../src/instrumentation/tracing.ts"],"sourcesContent":[],"mappings":";;;;;;AAWA;AAOgB,iBAPA,aAAA,CAAA,CAO8B,EAPb,IAOa,GAAU,SAAA;AAUxD;;;AAAmE,iBAVnD,iBAAA,CAUmD,UAAA,EAVrB,UAUqB,CAAA,EAAA,IAAA;AAAI;AAkBvE;;AAEY,iBApBI,UAAA,CAoBJ,IAAA,EAAA,MAAA,EAAA,UAAA,CAAA,EApB0C,UAoB1C,CAAA,EApBuD,IAoBvD;;;;;;AAEF;AA4BV;;;;;;AAII,iBApCkB,QAoClB,CAAA,CAAA,CAAA,CAAA,IAAA,EAAA,MAAA,EAAA,EAAA,EAAA,CAAA,IAAA,EAlCQ,IAkCR,EAAA,GAlCiB,OAkCjB,CAlCyB,CAkCzB,CAAA,EAAA,UAAA,CAAA,EAjCU,UAiCV,CAAA,EAhCD,OAgCC,CAhCO,CAgCP,CAAA;AA2BJ;AAQA;AAQA;AAcgB,iBA7DA,YA6DwC,CAAA,CAAA,CAAA,CAAA,IAAU,EAAA,MAAA,EAAA,EAAA,EAAA,CAAA,IAAA,EA3DtD,IA2DsD,EAAA,GA3D7C,CA2D6C,EAAA,UAAA,CAAA,EA1DpD,UA0DoD,CAAA,EAzD/D,CAyD+D;;;;iBA9BlD,UAAA,CAAA;;;;iBAQA,SAAA,CAAA;;;;iBAQA,eAAA,QAAuB;;;;iBAcvB,YAAA,4BAAwC"}
|
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
const require_chunk = require('./chunk-CUT6urMc.cjs');
|
|
2
|
-
const __opentelemetry_api = require_chunk.__toESM(require("@opentelemetry/api"));
|
|
3
|
-
|
|
4
|
-
//#region src/instrumentation/tracing.ts
|
|
5
|
-
/**
|
|
6
|
-
* Get the currently active span
|
|
7
|
-
*/
|
|
8
|
-
function getActiveSpan() {
|
|
9
|
-
return __opentelemetry_api.trace.getActiveSpan();
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Set attributes on the active span
|
|
13
|
-
*/
|
|
14
|
-
function setSpanAttributes(attributes) {
|
|
15
|
-
const span = getActiveSpan();
|
|
16
|
-
if (span) span.setAttributes(attributes);
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Create a new span as a child of the current span
|
|
20
|
-
*/
|
|
21
|
-
function createSpan(name, attributes) {
|
|
22
|
-
const tracer = __opentelemetry_api.trace.getTracer("@geekmidas/telescope");
|
|
23
|
-
const span = tracer.startSpan(name, { attributes });
|
|
24
|
-
return span;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Execute a function within a new span context
|
|
28
|
-
*
|
|
29
|
-
* @example
|
|
30
|
-
* ```typescript
|
|
31
|
-
* const result = await withSpan('processOrder', async (span) => {
|
|
32
|
-
* span.setAttribute('order.id', orderId);
|
|
33
|
-
* const order = await processOrder(orderId);
|
|
34
|
-
* return order;
|
|
35
|
-
* });
|
|
36
|
-
* ```
|
|
37
|
-
*/
|
|
38
|
-
async function withSpan(name, fn, attributes) {
|
|
39
|
-
const tracer = __opentelemetry_api.trace.getTracer("@geekmidas/telescope");
|
|
40
|
-
const span = tracer.startSpan(name, { attributes });
|
|
41
|
-
try {
|
|
42
|
-
const result = await __opentelemetry_api.context.with(__opentelemetry_api.trace.setSpan(__opentelemetry_api.context.active(), span), () => fn(span));
|
|
43
|
-
span.setStatus({ code: __opentelemetry_api.SpanStatusCode.OK });
|
|
44
|
-
return result;
|
|
45
|
-
} catch (error) {
|
|
46
|
-
span.setStatus({
|
|
47
|
-
code: __opentelemetry_api.SpanStatusCode.ERROR,
|
|
48
|
-
message: error instanceof Error ? error.message : "Unknown error"
|
|
49
|
-
});
|
|
50
|
-
span.recordException(error instanceof Error ? error : new Error(String(error)));
|
|
51
|
-
throw error;
|
|
52
|
-
} finally {
|
|
53
|
-
span.end();
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Synchronous version of withSpan
|
|
58
|
-
*/
|
|
59
|
-
function withSpanSync(name, fn, attributes) {
|
|
60
|
-
const tracer = __opentelemetry_api.trace.getTracer("@geekmidas/telescope");
|
|
61
|
-
const span = tracer.startSpan(name, { attributes });
|
|
62
|
-
try {
|
|
63
|
-
const result = __opentelemetry_api.context.with(__opentelemetry_api.trace.setSpan(__opentelemetry_api.context.active(), span), () => fn(span));
|
|
64
|
-
span.setStatus({ code: __opentelemetry_api.SpanStatusCode.OK });
|
|
65
|
-
return result;
|
|
66
|
-
} catch (error) {
|
|
67
|
-
span.setStatus({
|
|
68
|
-
code: __opentelemetry_api.SpanStatusCode.ERROR,
|
|
69
|
-
message: error instanceof Error ? error.message : "Unknown error"
|
|
70
|
-
});
|
|
71
|
-
span.recordException(error instanceof Error ? error : new Error(String(error)));
|
|
72
|
-
throw error;
|
|
73
|
-
} finally {
|
|
74
|
-
span.end();
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Get the current trace ID (useful for log correlation)
|
|
79
|
-
*/
|
|
80
|
-
function getTraceId() {
|
|
81
|
-
const span = getActiveSpan();
|
|
82
|
-
return span?.spanContext().traceId;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Get the current span ID
|
|
86
|
-
*/
|
|
87
|
-
function getSpanId() {
|
|
88
|
-
const span = getActiveSpan();
|
|
89
|
-
return span?.spanContext().spanId;
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Record an exception on the current span
|
|
93
|
-
*/
|
|
94
|
-
function recordException(error) {
|
|
95
|
-
const span = getActiveSpan();
|
|
96
|
-
if (span) {
|
|
97
|
-
span.recordException(error);
|
|
98
|
-
span.setStatus({
|
|
99
|
-
code: __opentelemetry_api.SpanStatusCode.ERROR,
|
|
100
|
-
message: error.message
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Add an event to the current span
|
|
106
|
-
*/
|
|
107
|
-
function addSpanEvent(name, attributes) {
|
|
108
|
-
const span = getActiveSpan();
|
|
109
|
-
if (span) span.addEvent(name, attributes);
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
//#endregion
|
|
113
|
-
Object.defineProperty(exports, 'addSpanEvent', {
|
|
114
|
-
enumerable: true,
|
|
115
|
-
get: function () {
|
|
116
|
-
return addSpanEvent;
|
|
117
|
-
}
|
|
118
|
-
});
|
|
119
|
-
Object.defineProperty(exports, 'createSpan', {
|
|
120
|
-
enumerable: true,
|
|
121
|
-
get: function () {
|
|
122
|
-
return createSpan;
|
|
123
|
-
}
|
|
124
|
-
});
|
|
125
|
-
Object.defineProperty(exports, 'getActiveSpan', {
|
|
126
|
-
enumerable: true,
|
|
127
|
-
get: function () {
|
|
128
|
-
return getActiveSpan;
|
|
129
|
-
}
|
|
130
|
-
});
|
|
131
|
-
Object.defineProperty(exports, 'getSpanId', {
|
|
132
|
-
enumerable: true,
|
|
133
|
-
get: function () {
|
|
134
|
-
return getSpanId;
|
|
135
|
-
}
|
|
136
|
-
});
|
|
137
|
-
Object.defineProperty(exports, 'getTraceId', {
|
|
138
|
-
enumerable: true,
|
|
139
|
-
get: function () {
|
|
140
|
-
return getTraceId;
|
|
141
|
-
}
|
|
142
|
-
});
|
|
143
|
-
Object.defineProperty(exports, 'recordException', {
|
|
144
|
-
enumerable: true,
|
|
145
|
-
get: function () {
|
|
146
|
-
return recordException;
|
|
147
|
-
}
|
|
148
|
-
});
|
|
149
|
-
Object.defineProperty(exports, 'setSpanAttributes', {
|
|
150
|
-
enumerable: true,
|
|
151
|
-
get: function () {
|
|
152
|
-
return setSpanAttributes;
|
|
153
|
-
}
|
|
154
|
-
});
|
|
155
|
-
Object.defineProperty(exports, 'withSpan', {
|
|
156
|
-
enumerable: true,
|
|
157
|
-
get: function () {
|
|
158
|
-
return withSpan;
|
|
159
|
-
}
|
|
160
|
-
});
|
|
161
|
-
Object.defineProperty(exports, 'withSpanSync', {
|
|
162
|
-
enumerable: true,
|
|
163
|
-
get: function () {
|
|
164
|
-
return withSpanSync;
|
|
165
|
-
}
|
|
166
|
-
});
|
|
167
|
-
//# sourceMappingURL=tracing-Bt1zWRlb.cjs.map
|