@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,3 +1,56 @@
|
|
|
1
|
-
import "
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { MetricBucket, MetricPoint, MetricQuery, MetricResult, MetricsStorageConfig, PartitionInfo, RollupOptions } from "./types.cjs";
|
|
2
|
+
//#region src/metrics/storage/MetricsStorage.d.ts
|
|
3
|
+
/**
|
|
4
|
+
* Interface for metrics storage backends.
|
|
5
|
+
*
|
|
6
|
+
* Implementations can use different storage technologies:
|
|
7
|
+
* - In-memory (development/testing)
|
|
8
|
+
* - PostgreSQL with TimescaleDB
|
|
9
|
+
* - ClickHouse
|
|
10
|
+
* - InfluxDB
|
|
11
|
+
*/
|
|
12
|
+
export interface MetricsStorage {
|
|
13
|
+
/**
|
|
14
|
+
* Write raw metric points to storage.
|
|
15
|
+
* Points are typically buffered and flushed in batches.
|
|
16
|
+
*/
|
|
17
|
+
write(points: MetricPoint[]): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Query metrics with aggregation.
|
|
20
|
+
* Returns time series data with statistics.
|
|
21
|
+
*/
|
|
22
|
+
query(query: MetricQuery): Promise<MetricResult[]>;
|
|
23
|
+
/**
|
|
24
|
+
* Get a single aggregated bucket for a specific time range.
|
|
25
|
+
* Useful for dashboards showing current values.
|
|
26
|
+
*/
|
|
27
|
+
getBucket(projectId: string, name: string, bucket: Date): Promise<MetricBucket | null>;
|
|
28
|
+
/**
|
|
29
|
+
* Roll up data from one tier to another.
|
|
30
|
+
* Aggregates fine-grained data into coarser buckets.
|
|
31
|
+
*/
|
|
32
|
+
rollup(options: RollupOptions): Promise<number>;
|
|
33
|
+
/**
|
|
34
|
+
* Prune old data based on retention policies.
|
|
35
|
+
* Returns the number of records deleted.
|
|
36
|
+
*/
|
|
37
|
+
prune(): Promise<number>;
|
|
38
|
+
/**
|
|
39
|
+
* List partitions for management and monitoring.
|
|
40
|
+
*/
|
|
41
|
+
listPartitions(tier?: string): Promise<PartitionInfo[]>;
|
|
42
|
+
/**
|
|
43
|
+
* Get storage configuration.
|
|
44
|
+
*/
|
|
45
|
+
getConfig(): MetricsStorageConfig;
|
|
46
|
+
/**
|
|
47
|
+
* Flush any buffered data to storage.
|
|
48
|
+
*/
|
|
49
|
+
flush(): Promise<void>;
|
|
50
|
+
/**
|
|
51
|
+
* Close the storage connection and clean up resources.
|
|
52
|
+
*/
|
|
53
|
+
close(): Promise<void>;
|
|
54
|
+
}
|
|
55
|
+
//#endregion
|
|
56
|
+
//# sourceMappingURL=MetricsStorage.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetricsStorage.d.cts","names":[],"sources":["../../../src/metrics/storage/MetricsStorage.ts"],"mappings":";;;;;;;;;;;iBAmBiB;;;;;EAKhB,MAAM,QAAQ,gBAAgB;;;;;EAM9B,MAAM,OAAO,cAAc,QAAQ;;;;;EAMnC,UACC,mBACA,cACA,QAAQ,OACN,QAAQ;;;;;EAMX,OAAO,SAAS,gBAAgB;;;;;EAMhC,SAAS;;;;EAKT,eAAe,gBAAgB,QAAQ;;;;EAKvC,aAAa;;;;EAKb,SAAS;;;;EAKT,SAAS"}
|
|
@@ -1,3 +1,56 @@
|
|
|
1
|
-
import "
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { MetricBucket, MetricPoint, MetricQuery, MetricResult, MetricsStorageConfig, PartitionInfo, RollupOptions } from "./types.mjs";
|
|
2
|
+
//#region src/metrics/storage/MetricsStorage.d.ts
|
|
3
|
+
/**
|
|
4
|
+
* Interface for metrics storage backends.
|
|
5
|
+
*
|
|
6
|
+
* Implementations can use different storage technologies:
|
|
7
|
+
* - In-memory (development/testing)
|
|
8
|
+
* - PostgreSQL with TimescaleDB
|
|
9
|
+
* - ClickHouse
|
|
10
|
+
* - InfluxDB
|
|
11
|
+
*/
|
|
12
|
+
export interface MetricsStorage {
|
|
13
|
+
/**
|
|
14
|
+
* Write raw metric points to storage.
|
|
15
|
+
* Points are typically buffered and flushed in batches.
|
|
16
|
+
*/
|
|
17
|
+
write(points: MetricPoint[]): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Query metrics with aggregation.
|
|
20
|
+
* Returns time series data with statistics.
|
|
21
|
+
*/
|
|
22
|
+
query(query: MetricQuery): Promise<MetricResult[]>;
|
|
23
|
+
/**
|
|
24
|
+
* Get a single aggregated bucket for a specific time range.
|
|
25
|
+
* Useful for dashboards showing current values.
|
|
26
|
+
*/
|
|
27
|
+
getBucket(projectId: string, name: string, bucket: Date): Promise<MetricBucket | null>;
|
|
28
|
+
/**
|
|
29
|
+
* Roll up data from one tier to another.
|
|
30
|
+
* Aggregates fine-grained data into coarser buckets.
|
|
31
|
+
*/
|
|
32
|
+
rollup(options: RollupOptions): Promise<number>;
|
|
33
|
+
/**
|
|
34
|
+
* Prune old data based on retention policies.
|
|
35
|
+
* Returns the number of records deleted.
|
|
36
|
+
*/
|
|
37
|
+
prune(): Promise<number>;
|
|
38
|
+
/**
|
|
39
|
+
* List partitions for management and monitoring.
|
|
40
|
+
*/
|
|
41
|
+
listPartitions(tier?: string): Promise<PartitionInfo[]>;
|
|
42
|
+
/**
|
|
43
|
+
* Get storage configuration.
|
|
44
|
+
*/
|
|
45
|
+
getConfig(): MetricsStorageConfig;
|
|
46
|
+
/**
|
|
47
|
+
* Flush any buffered data to storage.
|
|
48
|
+
*/
|
|
49
|
+
flush(): Promise<void>;
|
|
50
|
+
/**
|
|
51
|
+
* Close the storage connection and clean up resources.
|
|
52
|
+
*/
|
|
53
|
+
close(): Promise<void>;
|
|
54
|
+
}
|
|
55
|
+
//#endregion
|
|
56
|
+
//# sourceMappingURL=MetricsStorage.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetricsStorage.d.mts","names":[],"sources":["../../../src/metrics/storage/MetricsStorage.ts"],"mappings":";;;;;;;;;;;iBAmBiB;;;;;EAKhB,MAAM,QAAQ,gBAAgB;;;;;EAM9B,MAAM,OAAO,cAAc,QAAQ;;;;;EAMnC,UACC,mBACA,cACA,QAAQ,OACN,QAAQ;;;;;EAMX,OAAO,SAAS,gBAAgB;;;;;EAMhC,SAAS;;;;EAKT,eAAe,gBAAgB,QAAQ;;;;EAKvC,aAAa;;;;EAKb,SAAS;;;;EAKT,SAAS"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
const
|
|
3
|
-
require(
|
|
4
|
-
|
|
5
|
-
exports.DEFAULT_METRICS_CONFIG =
|
|
6
|
-
exports.InMemoryMetricsStorage =
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_metrics_storage_types = require("./types.cjs");
|
|
3
|
+
const require_metrics_storage_InMemoryMetricsStorage = require("./InMemoryMetricsStorage.cjs");
|
|
4
|
+
require("./MetricsStorage.cjs");
|
|
5
|
+
exports.DEFAULT_METRICS_CONFIG = require_metrics_storage_types.DEFAULT_METRICS_CONFIG;
|
|
6
|
+
exports.InMemoryMetricsStorage = require_metrics_storage_InMemoryMetricsStorage.InMemoryMetricsStorage;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AggregationInterval, DEFAULT_METRICS_CONFIG, MetricBucket, MetricLabels, MetricPoint, MetricQuery, MetricResult, MetricTimeSeriesPoint, MetricType, MetricsStorageConfig, PartitionInfo, RollupOptions, StorageTier, TDigestData, TimeRange } from "
|
|
2
|
-
import { MetricsStorage } from "
|
|
3
|
-
import { InMemoryMetricsStorage } from "
|
|
1
|
+
import { AggregationInterval, DEFAULT_METRICS_CONFIG, MetricBucket, MetricLabels, MetricPoint, MetricQuery, MetricResult, MetricTimeSeriesPoint, MetricType, MetricsStorageConfig, PartitionInfo, RollupOptions, StorageTier, TDigestData, TimeRange } from "./types.cjs";
|
|
2
|
+
import { MetricsStorage } from "./MetricsStorage.cjs";
|
|
3
|
+
import { InMemoryMetricsStorage } from "./InMemoryMetricsStorage.cjs";
|
|
4
4
|
export { AggregationInterval, DEFAULT_METRICS_CONFIG, InMemoryMetricsStorage, MetricBucket, MetricLabels, MetricPoint, MetricQuery, MetricResult, MetricTimeSeriesPoint, MetricType, MetricsStorage, MetricsStorageConfig, PartitionInfo, RollupOptions, StorageTier, TDigestData, TimeRange };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AggregationInterval, DEFAULT_METRICS_CONFIG, MetricBucket, MetricLabels, MetricPoint, MetricQuery, MetricResult, MetricTimeSeriesPoint, MetricType, MetricsStorageConfig, PartitionInfo, RollupOptions, StorageTier, TDigestData, TimeRange } from "
|
|
2
|
-
import { MetricsStorage } from "
|
|
3
|
-
import { InMemoryMetricsStorage } from "
|
|
1
|
+
import { AggregationInterval, DEFAULT_METRICS_CONFIG, MetricBucket, MetricLabels, MetricPoint, MetricQuery, MetricResult, MetricTimeSeriesPoint, MetricType, MetricsStorageConfig, PartitionInfo, RollupOptions, StorageTier, TDigestData, TimeRange } from "./types.mjs";
|
|
2
|
+
import { MetricsStorage } from "./MetricsStorage.mjs";
|
|
3
|
+
import { InMemoryMetricsStorage } from "./InMemoryMetricsStorage.mjs";
|
|
4
4
|
export { AggregationInterval, DEFAULT_METRICS_CONFIG, InMemoryMetricsStorage, MetricBucket, MetricLabels, MetricPoint, MetricQuery, MetricResult, MetricTimeSeriesPoint, MetricType, MetricsStorage, MetricsStorageConfig, PartitionInfo, RollupOptions, StorageTier, TDigestData, TimeRange };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { DEFAULT_METRICS_CONFIG } from "
|
|
2
|
-
import { InMemoryMetricsStorage } from "
|
|
3
|
-
import "
|
|
4
|
-
|
|
5
|
-
export { DEFAULT_METRICS_CONFIG, InMemoryMetricsStorage };
|
|
1
|
+
import { DEFAULT_METRICS_CONFIG } from "./types.mjs";
|
|
2
|
+
import { InMemoryMetricsStorage } from "./InMemoryMetricsStorage.mjs";
|
|
3
|
+
import "./MetricsStorage.mjs";
|
|
4
|
+
export { DEFAULT_METRICS_CONFIG, InMemoryMetricsStorage };
|
|
@@ -1,3 +1,35 @@
|
|
|
1
|
-
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
//#region src/metrics/storage/types.ts
|
|
3
|
+
/**
|
|
4
|
+
* Default configuration with hybrid storage strategy
|
|
5
|
+
*/
|
|
6
|
+
const DEFAULT_METRICS_CONFIG = {
|
|
7
|
+
tiers: [
|
|
8
|
+
{
|
|
9
|
+
name: "raw",
|
|
10
|
+
interval: "1m",
|
|
11
|
+
retention: 36e5,
|
|
12
|
+
partitionInterval: "hourly"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
name: "1m",
|
|
16
|
+
interval: "1m",
|
|
17
|
+
retention: 6048e5,
|
|
18
|
+
partitionInterval: "daily"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
name: "1h",
|
|
22
|
+
interval: "1h",
|
|
23
|
+
retention: 0,
|
|
24
|
+
partitionInterval: "monthly"
|
|
25
|
+
}
|
|
26
|
+
],
|
|
27
|
+
flushInterval: 1e4,
|
|
28
|
+
maxBatchSize: 1e3,
|
|
29
|
+
autoRollup: true,
|
|
30
|
+
tdigestCompression: 100
|
|
31
|
+
};
|
|
32
|
+
//#endregion
|
|
33
|
+
exports.DEFAULT_METRICS_CONFIG = DEFAULT_METRICS_CONFIG;
|
|
2
34
|
|
|
3
|
-
|
|
35
|
+
//# sourceMappingURL=types.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.cjs","names":[],"sources":["../../../src/metrics/storage/types.ts"],"sourcesContent":["/**\n * Metric types supported by the storage system\n */\nexport type MetricType = 'counter' | 'gauge' | 'histogram';\n\n/**\n * Labels/dimensions for metric filtering and grouping\n */\nexport type MetricLabels = Record<string, string>;\n\n/**\n * A single metric data point\n */\nexport interface MetricPoint {\n\t/** Timestamp of the metric */\n\ttimestamp: Date;\n\t/** Project/app identifier for multi-tenant isolation */\n\tprojectId: string;\n\t/** Service name (e.g., 'api', 'worker', 'cron') */\n\tservice: string;\n\t/** Environment (e.g., 'development', 'staging', 'production') */\n\tenvironment: string;\n\t/** Metric name (e.g., 'http.request.duration', 'orders.created') */\n\tname: string;\n\t/** Metric type */\n\ttype: MetricType;\n\t/** Numeric value */\n\tvalue: number;\n\t/** Dimensions for filtering/grouping */\n\tlabels: MetricLabels;\n}\n\n/**\n * Aggregated metric bucket (pre-computed for efficient queries)\n */\nexport interface MetricBucket {\n\t/** Bucket start timestamp */\n\tbucket: Date;\n\t/** Project identifier */\n\tprojectId: string;\n\t/** Service name */\n\tservice: string;\n\t/** Environment */\n\tenvironment: string;\n\t/** Metric name */\n\tname: string;\n\t/** Hash of labels for grouping */\n\tlabelsHash: string;\n\t/** Original labels */\n\tlabels: MetricLabels;\n\t/** Number of data points in bucket */\n\tcount: number;\n\t/** Sum of values */\n\tsum: number;\n\t/** Minimum value */\n\tmin: number;\n\t/** Maximum value */\n\tmax: number;\n\t/** T-Digest sketch for percentile calculations (serialized) */\n\tsketch?: TDigestData;\n}\n\n/**\n * Serialized T-Digest data structure for percentile calculations\n * Stores centroids (mean, weight) that can be merged across buckets\n */\nexport interface TDigestData {\n\t/** Centroids: [mean, weight][] */\n\tcentroids: [number, number][];\n\t/** Compression factor (higher = more accuracy, more memory) */\n\tcompression: number;\n\t/** Total count of values */\n\tcount: number;\n\t/** Minimum value seen */\n\tmin: number;\n\t/** Maximum value seen */\n\tmax: number;\n}\n\n/**\n * Time range for queries\n */\nexport interface TimeRange {\n\tstart: Date;\n\tend: Date;\n}\n\n/**\n * Aggregation granularity\n */\nexport type AggregationInterval = '1m' | '5m' | '15m' | '1h' | '6h' | '1d';\n\n/**\n * Query parameters for retrieving metrics\n */\nexport interface MetricQuery {\n\t/** Project filter (required for multi-tenant) */\n\tprojectId: string;\n\t/** Optional service filter */\n\tservice?: string;\n\t/** Optional environment filter */\n\tenvironment?: string;\n\t/** Metric name pattern (supports wildcards like 'http.*') */\n\tname?: string;\n\t/** Label filters */\n\tlabels?: MetricLabels;\n\t/** Time range */\n\trange: TimeRange;\n\t/** Aggregation interval */\n\tinterval?: AggregationInterval;\n\t/** Group by these label keys */\n\tgroupBy?: string[];\n\t/** Maximum number of results */\n\tlimit?: number;\n}\n\n/**\n * Query result with aggregated values\n */\nexport interface MetricResult {\n\t/** Metric name */\n\tname: string;\n\t/** Labels (grouped by keys if specified) */\n\tlabels: MetricLabels;\n\t/** Time series data points */\n\ttimeSeries: MetricTimeSeriesPoint[];\n\t/** Overall statistics for the query range */\n\tstats: {\n\t\tcount: number;\n\t\tsum: number;\n\t\tavg: number;\n\t\tmin: number;\n\t\tmax: number;\n\t\tp50: number;\n\t\tp95: number;\n\t\tp99: number;\n\t};\n}\n\n/**\n * Single point in a time series result\n */\nexport interface MetricTimeSeriesPoint {\n\ttimestamp: Date;\n\tcount: number;\n\tsum: number;\n\tavg: number;\n\tmin: number;\n\tmax: number;\n\tp50?: number;\n\tp95?: number;\n\tp99?: number;\n}\n\n/**\n * Storage tier configuration\n */\nexport interface StorageTier {\n\t/** Table/collection name for this tier */\n\tname: string;\n\t/** Bucket interval for aggregation */\n\tinterval: AggregationInterval;\n\t/** Retention duration in milliseconds (0 = forever) */\n\tretention: number;\n\t/** Partition interval for efficient pruning */\n\tpartitionInterval: 'hourly' | 'daily' | 'weekly' | 'monthly';\n}\n\n/**\n * Metrics storage configuration\n */\nexport interface MetricsStorageConfig {\n\t/** Storage tiers (raw, minute, hourly, etc.) */\n\ttiers: StorageTier[];\n\t/** Flush interval in milliseconds */\n\tflushInterval: number;\n\t/** Maximum batch size for writes */\n\tmaxBatchSize: number;\n\t/** Enable automatic rollup between tiers */\n\tautoRollup: boolean;\n\t/** T-Digest compression factor (default: 100) */\n\ttdigestCompression: number;\n}\n\n/**\n * Default configuration with hybrid storage strategy\n */\nexport const DEFAULT_METRICS_CONFIG: MetricsStorageConfig = {\n\ttiers: [\n\t\t{\n\t\t\tname: 'raw',\n\t\t\tinterval: '1m',\n\t\t\tretention: 60 * 60 * 1000, // 1 hour\n\t\t\tpartitionInterval: 'hourly',\n\t\t},\n\t\t{\n\t\t\tname: '1m',\n\t\t\tinterval: '1m',\n\t\t\tretention: 7 * 24 * 60 * 60 * 1000, // 7 days\n\t\t\tpartitionInterval: 'daily',\n\t\t},\n\t\t{\n\t\t\tname: '1h',\n\t\t\tinterval: '1h',\n\t\t\tretention: 0, // Forever\n\t\t\tpartitionInterval: 'monthly',\n\t\t},\n\t],\n\tflushInterval: 10_000, // 10 seconds\n\tmaxBatchSize: 1000,\n\tautoRollup: true,\n\ttdigestCompression: 100,\n};\n\n/**\n * Rollup options for aggregating data between tiers\n */\nexport interface RollupOptions {\n\t/** Source tier */\n\tfrom: string;\n\t/** Target tier */\n\tto: string;\n\t/** Only rollup data older than this */\n\tolderThan: Date;\n}\n\n/**\n * Partition info for management\n */\nexport interface PartitionInfo {\n\t/** Partition name */\n\tname: string;\n\t/** Tier this partition belongs to */\n\ttier: string;\n\t/** Partition start time */\n\tstart: Date;\n\t/** Partition end time */\n\tend: Date;\n\t/** Approximate row count */\n\trowCount?: number;\n\t/** Size in bytes */\n\tsizeBytes?: number;\n}\n"],"mappings":";;;;;AA2LA,MAAa,yBAA+C;CAC3D,OAAO;EACN;GACC,MAAM;GACN,UAAU;GACV,WAAW;GACX,mBAAmB;EACpB;EACA;GACC,MAAM;GACN,UAAU;GACV,WAAW;GACX,mBAAmB;EACpB;EACA;GACC,MAAM;GACN,UAAU;GACV,WAAW;GACX,mBAAmB;EACpB;CACD;CACA,eAAe;CACf,cAAc;CACd,YAAY;CACZ,oBAAoB;AACrB"}
|
|
@@ -1,2 +1,207 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
//#region src/metrics/storage/types.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Metric types supported by the storage system
|
|
4
|
+
*/
|
|
5
|
+
export type MetricType = 'counter' | 'gauge' | 'histogram';
|
|
6
|
+
/**
|
|
7
|
+
* Labels/dimensions for metric filtering and grouping
|
|
8
|
+
*/
|
|
9
|
+
export type MetricLabels = Record<string, string>;
|
|
10
|
+
/**
|
|
11
|
+
* A single metric data point
|
|
12
|
+
*/
|
|
13
|
+
export interface MetricPoint {
|
|
14
|
+
/** Timestamp of the metric */
|
|
15
|
+
timestamp: Date;
|
|
16
|
+
/** Project/app identifier for multi-tenant isolation */
|
|
17
|
+
projectId: string;
|
|
18
|
+
/** Service name (e.g., 'api', 'worker', 'cron') */
|
|
19
|
+
service: string;
|
|
20
|
+
/** Environment (e.g., 'development', 'staging', 'production') */
|
|
21
|
+
environment: string;
|
|
22
|
+
/** Metric name (e.g., 'http.request.duration', 'orders.created') */
|
|
23
|
+
name: string;
|
|
24
|
+
/** Metric type */
|
|
25
|
+
type: MetricType;
|
|
26
|
+
/** Numeric value */
|
|
27
|
+
value: number;
|
|
28
|
+
/** Dimensions for filtering/grouping */
|
|
29
|
+
labels: MetricLabels;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Aggregated metric bucket (pre-computed for efficient queries)
|
|
33
|
+
*/
|
|
34
|
+
export interface MetricBucket {
|
|
35
|
+
/** Bucket start timestamp */
|
|
36
|
+
bucket: Date;
|
|
37
|
+
/** Project identifier */
|
|
38
|
+
projectId: string;
|
|
39
|
+
/** Service name */
|
|
40
|
+
service: string;
|
|
41
|
+
/** Environment */
|
|
42
|
+
environment: string;
|
|
43
|
+
/** Metric name */
|
|
44
|
+
name: string;
|
|
45
|
+
/** Hash of labels for grouping */
|
|
46
|
+
labelsHash: string;
|
|
47
|
+
/** Original labels */
|
|
48
|
+
labels: MetricLabels;
|
|
49
|
+
/** Number of data points in bucket */
|
|
50
|
+
count: number;
|
|
51
|
+
/** Sum of values */
|
|
52
|
+
sum: number;
|
|
53
|
+
/** Minimum value */
|
|
54
|
+
min: number;
|
|
55
|
+
/** Maximum value */
|
|
56
|
+
max: number;
|
|
57
|
+
/** T-Digest sketch for percentile calculations (serialized) */
|
|
58
|
+
sketch?: TDigestData;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Serialized T-Digest data structure for percentile calculations
|
|
62
|
+
* Stores centroids (mean, weight) that can be merged across buckets
|
|
63
|
+
*/
|
|
64
|
+
export interface TDigestData {
|
|
65
|
+
/** Centroids: [mean, weight][] */
|
|
66
|
+
centroids: [number, number][];
|
|
67
|
+
/** Compression factor (higher = more accuracy, more memory) */
|
|
68
|
+
compression: number;
|
|
69
|
+
/** Total count of values */
|
|
70
|
+
count: number;
|
|
71
|
+
/** Minimum value seen */
|
|
72
|
+
min: number;
|
|
73
|
+
/** Maximum value seen */
|
|
74
|
+
max: number;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Time range for queries
|
|
78
|
+
*/
|
|
79
|
+
export interface TimeRange {
|
|
80
|
+
start: Date;
|
|
81
|
+
end: Date;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Aggregation granularity
|
|
85
|
+
*/
|
|
86
|
+
export type AggregationInterval = '1m' | '5m' | '15m' | '1h' | '6h' | '1d';
|
|
87
|
+
/**
|
|
88
|
+
* Query parameters for retrieving metrics
|
|
89
|
+
*/
|
|
90
|
+
export interface MetricQuery {
|
|
91
|
+
/** Project filter (required for multi-tenant) */
|
|
92
|
+
projectId: string;
|
|
93
|
+
/** Optional service filter */
|
|
94
|
+
service?: string;
|
|
95
|
+
/** Optional environment filter */
|
|
96
|
+
environment?: string;
|
|
97
|
+
/** Metric name pattern (supports wildcards like 'http.*') */
|
|
98
|
+
name?: string;
|
|
99
|
+
/** Label filters */
|
|
100
|
+
labels?: MetricLabels;
|
|
101
|
+
/** Time range */
|
|
102
|
+
range: TimeRange;
|
|
103
|
+
/** Aggregation interval */
|
|
104
|
+
interval?: AggregationInterval;
|
|
105
|
+
/** Group by these label keys */
|
|
106
|
+
groupBy?: string[];
|
|
107
|
+
/** Maximum number of results */
|
|
108
|
+
limit?: number;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Query result with aggregated values
|
|
112
|
+
*/
|
|
113
|
+
export interface MetricResult {
|
|
114
|
+
/** Metric name */
|
|
115
|
+
name: string;
|
|
116
|
+
/** Labels (grouped by keys if specified) */
|
|
117
|
+
labels: MetricLabels;
|
|
118
|
+
/** Time series data points */
|
|
119
|
+
timeSeries: MetricTimeSeriesPoint[];
|
|
120
|
+
/** Overall statistics for the query range */
|
|
121
|
+
stats: {
|
|
122
|
+
count: number;
|
|
123
|
+
sum: number;
|
|
124
|
+
avg: number;
|
|
125
|
+
min: number;
|
|
126
|
+
max: number;
|
|
127
|
+
p50: number;
|
|
128
|
+
p95: number;
|
|
129
|
+
p99: number;
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Single point in a time series result
|
|
134
|
+
*/
|
|
135
|
+
export interface MetricTimeSeriesPoint {
|
|
136
|
+
timestamp: Date;
|
|
137
|
+
count: number;
|
|
138
|
+
sum: number;
|
|
139
|
+
avg: number;
|
|
140
|
+
min: number;
|
|
141
|
+
max: number;
|
|
142
|
+
p50?: number;
|
|
143
|
+
p95?: number;
|
|
144
|
+
p99?: number;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Storage tier configuration
|
|
148
|
+
*/
|
|
149
|
+
export interface StorageTier {
|
|
150
|
+
/** Table/collection name for this tier */
|
|
151
|
+
name: string;
|
|
152
|
+
/** Bucket interval for aggregation */
|
|
153
|
+
interval: AggregationInterval;
|
|
154
|
+
/** Retention duration in milliseconds (0 = forever) */
|
|
155
|
+
retention: number;
|
|
156
|
+
/** Partition interval for efficient pruning */
|
|
157
|
+
partitionInterval: 'hourly' | 'daily' | 'weekly' | 'monthly';
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Metrics storage configuration
|
|
161
|
+
*/
|
|
162
|
+
export interface MetricsStorageConfig {
|
|
163
|
+
/** Storage tiers (raw, minute, hourly, etc.) */
|
|
164
|
+
tiers: StorageTier[];
|
|
165
|
+
/** Flush interval in milliseconds */
|
|
166
|
+
flushInterval: number;
|
|
167
|
+
/** Maximum batch size for writes */
|
|
168
|
+
maxBatchSize: number;
|
|
169
|
+
/** Enable automatic rollup between tiers */
|
|
170
|
+
autoRollup: boolean;
|
|
171
|
+
/** T-Digest compression factor (default: 100) */
|
|
172
|
+
tdigestCompression: number;
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Default configuration with hybrid storage strategy
|
|
176
|
+
*/
|
|
177
|
+
export declare const DEFAULT_METRICS_CONFIG: MetricsStorageConfig;
|
|
178
|
+
/**
|
|
179
|
+
* Rollup options for aggregating data between tiers
|
|
180
|
+
*/
|
|
181
|
+
export interface RollupOptions {
|
|
182
|
+
/** Source tier */
|
|
183
|
+
from: string;
|
|
184
|
+
/** Target tier */
|
|
185
|
+
to: string;
|
|
186
|
+
/** Only rollup data older than this */
|
|
187
|
+
olderThan: Date;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Partition info for management
|
|
191
|
+
*/
|
|
192
|
+
export interface PartitionInfo {
|
|
193
|
+
/** Partition name */
|
|
194
|
+
name: string;
|
|
195
|
+
/** Tier this partition belongs to */
|
|
196
|
+
tier: string;
|
|
197
|
+
/** Partition start time */
|
|
198
|
+
start: Date;
|
|
199
|
+
/** Partition end time */
|
|
200
|
+
end: Date;
|
|
201
|
+
/** Approximate row count */
|
|
202
|
+
rowCount?: number;
|
|
203
|
+
/** Size in bytes */
|
|
204
|
+
sizeBytes?: number;
|
|
205
|
+
}
|
|
206
|
+
//#endregion
|
|
207
|
+
//# sourceMappingURL=types.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.cts","names":[],"sources":["../../../src/metrics/storage/types.ts"],"mappings":";;;;YAGY;;;;YAKA,eAAe;;;;iBAKV;;EAEhB,WAAW;;EAEX;;EAEA;;EAEA;;EAEA;;EAEA,MAAM;;EAEN;;EAEA,QAAQ;;;;;iBAMQ;;EAEhB,QAAQ;;EAER;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,QAAQ;;EAER;;EAEA;;EAEA;;EAEA;;EAEA,SAAS;;;;;;iBAOO;;EAEhB;;EAEA;;EAEA;;EAEA;;EAEA;;;;;iBAMgB;EAChB,OAAO;EACP,KAAK;;;;;YAMM;;;;iBAKK;;EAEhB;;EAEA;;EAEA;;EAEA;;EAEA,SAAS;;EAET,OAAO;;EAEP,WAAW;;EAEX;;EAEA;;;;;iBAMgB;;EAEhB;;EAEA,QAAQ;;EAER,YAAY;;EAEZ;IACC;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;;;;;iBAOe;EAChB,WAAW;EACX;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;;iBAMgB;;EAEhB;;EAEA,UAAU;;EAEV;;EAEA;;;;;iBAMgB;;EAEhB,OAAO;;EAEP;;EAEA;;EAEA;;EAEA;;;;;qBAMY,wBAAwB;;;;iBA8BpB;;EAEhB;;EAEA;;EAEA,WAAW;;;;;iBAMK;;EAEhB;;EAEA;;EAEA,OAAO;;EAEP,KAAK;;EAEL;;EAEA"}
|
|
@@ -1,2 +1,207 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
//#region src/metrics/storage/types.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Metric types supported by the storage system
|
|
4
|
+
*/
|
|
5
|
+
export type MetricType = 'counter' | 'gauge' | 'histogram';
|
|
6
|
+
/**
|
|
7
|
+
* Labels/dimensions for metric filtering and grouping
|
|
8
|
+
*/
|
|
9
|
+
export type MetricLabels = Record<string, string>;
|
|
10
|
+
/**
|
|
11
|
+
* A single metric data point
|
|
12
|
+
*/
|
|
13
|
+
export interface MetricPoint {
|
|
14
|
+
/** Timestamp of the metric */
|
|
15
|
+
timestamp: Date;
|
|
16
|
+
/** Project/app identifier for multi-tenant isolation */
|
|
17
|
+
projectId: string;
|
|
18
|
+
/** Service name (e.g., 'api', 'worker', 'cron') */
|
|
19
|
+
service: string;
|
|
20
|
+
/** Environment (e.g., 'development', 'staging', 'production') */
|
|
21
|
+
environment: string;
|
|
22
|
+
/** Metric name (e.g., 'http.request.duration', 'orders.created') */
|
|
23
|
+
name: string;
|
|
24
|
+
/** Metric type */
|
|
25
|
+
type: MetricType;
|
|
26
|
+
/** Numeric value */
|
|
27
|
+
value: number;
|
|
28
|
+
/** Dimensions for filtering/grouping */
|
|
29
|
+
labels: MetricLabels;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Aggregated metric bucket (pre-computed for efficient queries)
|
|
33
|
+
*/
|
|
34
|
+
export interface MetricBucket {
|
|
35
|
+
/** Bucket start timestamp */
|
|
36
|
+
bucket: Date;
|
|
37
|
+
/** Project identifier */
|
|
38
|
+
projectId: string;
|
|
39
|
+
/** Service name */
|
|
40
|
+
service: string;
|
|
41
|
+
/** Environment */
|
|
42
|
+
environment: string;
|
|
43
|
+
/** Metric name */
|
|
44
|
+
name: string;
|
|
45
|
+
/** Hash of labels for grouping */
|
|
46
|
+
labelsHash: string;
|
|
47
|
+
/** Original labels */
|
|
48
|
+
labels: MetricLabels;
|
|
49
|
+
/** Number of data points in bucket */
|
|
50
|
+
count: number;
|
|
51
|
+
/** Sum of values */
|
|
52
|
+
sum: number;
|
|
53
|
+
/** Minimum value */
|
|
54
|
+
min: number;
|
|
55
|
+
/** Maximum value */
|
|
56
|
+
max: number;
|
|
57
|
+
/** T-Digest sketch for percentile calculations (serialized) */
|
|
58
|
+
sketch?: TDigestData;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Serialized T-Digest data structure for percentile calculations
|
|
62
|
+
* Stores centroids (mean, weight) that can be merged across buckets
|
|
63
|
+
*/
|
|
64
|
+
export interface TDigestData {
|
|
65
|
+
/** Centroids: [mean, weight][] */
|
|
66
|
+
centroids: [number, number][];
|
|
67
|
+
/** Compression factor (higher = more accuracy, more memory) */
|
|
68
|
+
compression: number;
|
|
69
|
+
/** Total count of values */
|
|
70
|
+
count: number;
|
|
71
|
+
/** Minimum value seen */
|
|
72
|
+
min: number;
|
|
73
|
+
/** Maximum value seen */
|
|
74
|
+
max: number;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Time range for queries
|
|
78
|
+
*/
|
|
79
|
+
export interface TimeRange {
|
|
80
|
+
start: Date;
|
|
81
|
+
end: Date;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Aggregation granularity
|
|
85
|
+
*/
|
|
86
|
+
export type AggregationInterval = '1m' | '5m' | '15m' | '1h' | '6h' | '1d';
|
|
87
|
+
/**
|
|
88
|
+
* Query parameters for retrieving metrics
|
|
89
|
+
*/
|
|
90
|
+
export interface MetricQuery {
|
|
91
|
+
/** Project filter (required for multi-tenant) */
|
|
92
|
+
projectId: string;
|
|
93
|
+
/** Optional service filter */
|
|
94
|
+
service?: string;
|
|
95
|
+
/** Optional environment filter */
|
|
96
|
+
environment?: string;
|
|
97
|
+
/** Metric name pattern (supports wildcards like 'http.*') */
|
|
98
|
+
name?: string;
|
|
99
|
+
/** Label filters */
|
|
100
|
+
labels?: MetricLabels;
|
|
101
|
+
/** Time range */
|
|
102
|
+
range: TimeRange;
|
|
103
|
+
/** Aggregation interval */
|
|
104
|
+
interval?: AggregationInterval;
|
|
105
|
+
/** Group by these label keys */
|
|
106
|
+
groupBy?: string[];
|
|
107
|
+
/** Maximum number of results */
|
|
108
|
+
limit?: number;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Query result with aggregated values
|
|
112
|
+
*/
|
|
113
|
+
export interface MetricResult {
|
|
114
|
+
/** Metric name */
|
|
115
|
+
name: string;
|
|
116
|
+
/** Labels (grouped by keys if specified) */
|
|
117
|
+
labels: MetricLabels;
|
|
118
|
+
/** Time series data points */
|
|
119
|
+
timeSeries: MetricTimeSeriesPoint[];
|
|
120
|
+
/** Overall statistics for the query range */
|
|
121
|
+
stats: {
|
|
122
|
+
count: number;
|
|
123
|
+
sum: number;
|
|
124
|
+
avg: number;
|
|
125
|
+
min: number;
|
|
126
|
+
max: number;
|
|
127
|
+
p50: number;
|
|
128
|
+
p95: number;
|
|
129
|
+
p99: number;
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Single point in a time series result
|
|
134
|
+
*/
|
|
135
|
+
export interface MetricTimeSeriesPoint {
|
|
136
|
+
timestamp: Date;
|
|
137
|
+
count: number;
|
|
138
|
+
sum: number;
|
|
139
|
+
avg: number;
|
|
140
|
+
min: number;
|
|
141
|
+
max: number;
|
|
142
|
+
p50?: number;
|
|
143
|
+
p95?: number;
|
|
144
|
+
p99?: number;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Storage tier configuration
|
|
148
|
+
*/
|
|
149
|
+
export interface StorageTier {
|
|
150
|
+
/** Table/collection name for this tier */
|
|
151
|
+
name: string;
|
|
152
|
+
/** Bucket interval for aggregation */
|
|
153
|
+
interval: AggregationInterval;
|
|
154
|
+
/** Retention duration in milliseconds (0 = forever) */
|
|
155
|
+
retention: number;
|
|
156
|
+
/** Partition interval for efficient pruning */
|
|
157
|
+
partitionInterval: 'hourly' | 'daily' | 'weekly' | 'monthly';
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Metrics storage configuration
|
|
161
|
+
*/
|
|
162
|
+
export interface MetricsStorageConfig {
|
|
163
|
+
/** Storage tiers (raw, minute, hourly, etc.) */
|
|
164
|
+
tiers: StorageTier[];
|
|
165
|
+
/** Flush interval in milliseconds */
|
|
166
|
+
flushInterval: number;
|
|
167
|
+
/** Maximum batch size for writes */
|
|
168
|
+
maxBatchSize: number;
|
|
169
|
+
/** Enable automatic rollup between tiers */
|
|
170
|
+
autoRollup: boolean;
|
|
171
|
+
/** T-Digest compression factor (default: 100) */
|
|
172
|
+
tdigestCompression: number;
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Default configuration with hybrid storage strategy
|
|
176
|
+
*/
|
|
177
|
+
export declare const DEFAULT_METRICS_CONFIG: MetricsStorageConfig;
|
|
178
|
+
/**
|
|
179
|
+
* Rollup options for aggregating data between tiers
|
|
180
|
+
*/
|
|
181
|
+
export interface RollupOptions {
|
|
182
|
+
/** Source tier */
|
|
183
|
+
from: string;
|
|
184
|
+
/** Target tier */
|
|
185
|
+
to: string;
|
|
186
|
+
/** Only rollup data older than this */
|
|
187
|
+
olderThan: Date;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Partition info for management
|
|
191
|
+
*/
|
|
192
|
+
export interface PartitionInfo {
|
|
193
|
+
/** Partition name */
|
|
194
|
+
name: string;
|
|
195
|
+
/** Tier this partition belongs to */
|
|
196
|
+
tier: string;
|
|
197
|
+
/** Partition start time */
|
|
198
|
+
start: Date;
|
|
199
|
+
/** Partition end time */
|
|
200
|
+
end: Date;
|
|
201
|
+
/** Approximate row count */
|
|
202
|
+
rowCount?: number;
|
|
203
|
+
/** Size in bytes */
|
|
204
|
+
sizeBytes?: number;
|
|
205
|
+
}
|
|
206
|
+
//#endregion
|
|
207
|
+
//# sourceMappingURL=types.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.mts","names":[],"sources":["../../../src/metrics/storage/types.ts"],"mappings":";;;;YAGY;;;;YAKA,eAAe;;;;iBAKV;;EAEhB,WAAW;;EAEX;;EAEA;;EAEA;;EAEA;;EAEA,MAAM;;EAEN;;EAEA,QAAQ;;;;;iBAMQ;;EAEhB,QAAQ;;EAER;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,QAAQ;;EAER;;EAEA;;EAEA;;EAEA;;EAEA,SAAS;;;;;;iBAOO;;EAEhB;;EAEA;;EAEA;;EAEA;;EAEA;;;;;iBAMgB;EAChB,OAAO;EACP,KAAK;;;;;YAMM;;;;iBAKK;;EAEhB;;EAEA;;EAEA;;EAEA;;EAEA,SAAS;;EAET,OAAO;;EAEP,WAAW;;EAEX;;EAEA;;;;;iBAMgB;;EAEhB;;EAEA,QAAQ;;EAER,YAAY;;EAEZ;IACC;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;;;;;iBAOe;EAChB,WAAW;EACX;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;;;iBAMgB;;EAEhB;;EAEA,UAAU;;EAEV;;EAEA;;;;;iBAMgB;;EAEhB,OAAO;;EAEP;;EAEA;;EAEA;;EAEA;;;;;qBAMY,wBAAwB;;;;iBA8BpB;;EAEhB;;EAEA;;EAEA,WAAW;;;;;iBAMK;;EAEhB;;EAEA;;EAEA,OAAO;;EAEP,KAAK;;EAEL;;EAEA"}
|