@prisma-next/middleware-telemetry 0.5.0-dev.1 → 0.5.0-dev.11

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/index.d.mts CHANGED
@@ -13,7 +13,10 @@ interface TelemetryEvent {
13
13
  interface TelemetryMiddlewareOptions {
14
14
  readonly onEvent?: (event: TelemetryEvent) => void;
15
15
  }
16
- declare function createTelemetryMiddleware(options?: TelemetryMiddlewareOptions): RuntimeMiddleware;
16
+ declare function createTelemetryMiddleware(options?: TelemetryMiddlewareOptions): RuntimeMiddleware & {
17
+ readonly familyId?: undefined;
18
+ readonly targetId?: undefined;
19
+ };
17
20
  //#endregion
18
21
  export { type TelemetryEvent, type TelemetryMiddlewareOptions, createTelemetryMiddleware };
19
22
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/telemetry-middleware.ts"],"sourcesContent":[],"mappings":";;;UAOiB,cAAA;;EAAA,SAAA,IAAA,EAAA,MAAc;EAUd,SAAA,MAAA,EAAA,MAAA;EAID,SAAA,WAAA,EAAA,MAAyB;;;;;UAJxB,0BAAA;6BACY;;iBAGb,yBAAA,WAAoC,6BAA6B"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/telemetry-middleware.ts"],"sourcesContent":[],"mappings":";;;UAOiB,cAAA;;EAAA,SAAA,IAAA,EAAA,MAAc;EAUd,SAAA,MAAA,EAAA,MAAA;EAID,SAAA,WAAA,EAAA,MAAyB;;;;;UAJxB,0BAAA;6BACY;;iBAGb,yBAAA,WACJ,6BACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../src/telemetry-middleware.ts"],"sourcesContent":["import type { PlanMeta } from '@prisma-next/contract/types';\nimport type {\n AfterExecuteResult,\n RuntimeMiddleware,\n RuntimeMiddlewareContext,\n} from '@prisma-next/framework-components/runtime';\n\nexport interface TelemetryEvent {\n readonly phase: 'beforeExecute' | 'afterExecute';\n readonly lane: string;\n readonly target: string;\n readonly storageHash: string;\n readonly rowCount?: number;\n readonly latencyMs?: number;\n readonly completed?: boolean;\n}\n\nexport interface TelemetryMiddlewareOptions {\n readonly onEvent?: (event: TelemetryEvent) => void;\n}\n\nexport function createTelemetryMiddleware(options?: TelemetryMiddlewareOptions): RuntimeMiddleware {\n const emit = (event: TelemetryEvent, ctx: RuntimeMiddlewareContext) => {\n try {\n if (options?.onEvent) {\n options.onEvent(event);\n } else {\n ctx.log.info(event);\n }\n } catch (error) {\n ctx.log.warn({ message: 'telemetry sink error', error, event });\n }\n };\n\n return {\n name: 'telemetry',\n async beforeExecute(plan: { readonly meta: PlanMeta }, ctx: RuntimeMiddlewareContext) {\n emit(\n {\n phase: 'beforeExecute',\n lane: plan.meta.lane,\n target: plan.meta.target,\n storageHash: plan.meta.storageHash,\n },\n ctx,\n );\n },\n async afterExecute(\n plan: { readonly meta: PlanMeta },\n result: AfterExecuteResult,\n ctx: RuntimeMiddlewareContext,\n ) {\n emit(\n {\n phase: 'afterExecute',\n lane: plan.meta.lane,\n target: plan.meta.target,\n storageHash: plan.meta.storageHash,\n rowCount: result.rowCount,\n latencyMs: result.latencyMs,\n completed: result.completed,\n },\n ctx,\n );\n },\n };\n}\n"],"mappings":";AAqBA,SAAgB,0BAA0B,SAAyD;CACjG,MAAM,QAAQ,OAAuB,QAAkC;AACrE,MAAI;AACF,OAAI,SAAS,QACX,SAAQ,QAAQ,MAAM;OAEtB,KAAI,IAAI,KAAK,MAAM;WAEd,OAAO;AACd,OAAI,IAAI,KAAK;IAAE,SAAS;IAAwB;IAAO;IAAO,CAAC;;;AAInE,QAAO;EACL,MAAM;EACN,MAAM,cAAc,MAAmC,KAA+B;AACpF,QACE;IACE,OAAO;IACP,MAAM,KAAK,KAAK;IAChB,QAAQ,KAAK,KAAK;IAClB,aAAa,KAAK,KAAK;IACxB,EACD,IACD;;EAEH,MAAM,aACJ,MACA,QACA,KACA;AACA,QACE;IACE,OAAO;IACP,MAAM,KAAK,KAAK;IAChB,QAAQ,KAAK,KAAK;IAClB,aAAa,KAAK,KAAK;IACvB,UAAU,OAAO;IACjB,WAAW,OAAO;IAClB,WAAW,OAAO;IACnB,EACD,IACD;;EAEJ"}
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../src/telemetry-middleware.ts"],"sourcesContent":["import type { PlanMeta } from '@prisma-next/contract/types';\nimport type {\n AfterExecuteResult,\n RuntimeMiddleware,\n RuntimeMiddlewareContext,\n} from '@prisma-next/framework-components/runtime';\n\nexport interface TelemetryEvent {\n readonly phase: 'beforeExecute' | 'afterExecute';\n readonly lane: string;\n readonly target: string;\n readonly storageHash: string;\n readonly rowCount?: number;\n readonly latencyMs?: number;\n readonly completed?: boolean;\n}\n\nexport interface TelemetryMiddlewareOptions {\n readonly onEvent?: (event: TelemetryEvent) => void;\n}\n\nexport function createTelemetryMiddleware(\n options?: TelemetryMiddlewareOptions,\n): RuntimeMiddleware & { readonly familyId?: undefined; readonly targetId?: undefined } {\n const emit = (event: TelemetryEvent, ctx: RuntimeMiddlewareContext) => {\n try {\n if (options?.onEvent) {\n options.onEvent(event);\n } else {\n ctx.log.info(event);\n }\n } catch (error) {\n ctx.log.warn({ message: 'telemetry sink error', error, event });\n }\n };\n\n return {\n name: 'telemetry',\n async beforeExecute(plan: { readonly meta: PlanMeta }, ctx: RuntimeMiddlewareContext) {\n emit(\n {\n phase: 'beforeExecute',\n lane: plan.meta.lane,\n target: plan.meta.target,\n storageHash: plan.meta.storageHash,\n },\n ctx,\n );\n },\n async afterExecute(\n plan: { readonly meta: PlanMeta },\n result: AfterExecuteResult,\n ctx: RuntimeMiddlewareContext,\n ) {\n emit(\n {\n phase: 'afterExecute',\n lane: plan.meta.lane,\n target: plan.meta.target,\n storageHash: plan.meta.storageHash,\n rowCount: result.rowCount,\n latencyMs: result.latencyMs,\n completed: result.completed,\n },\n ctx,\n );\n },\n };\n}\n"],"mappings":";AAqBA,SAAgB,0BACd,SACsF;CACtF,MAAM,QAAQ,OAAuB,QAAkC;AACrE,MAAI;AACF,OAAI,SAAS,QACX,SAAQ,QAAQ,MAAM;OAEtB,KAAI,IAAI,KAAK,MAAM;WAEd,OAAO;AACd,OAAI,IAAI,KAAK;IAAE,SAAS;IAAwB;IAAO;IAAO,CAAC;;;AAInE,QAAO;EACL,MAAM;EACN,MAAM,cAAc,MAAmC,KAA+B;AACpF,QACE;IACE,OAAO;IACP,MAAM,KAAK,KAAK;IAChB,QAAQ,KAAK,KAAK;IAClB,aAAa,KAAK,KAAK;IACxB,EACD,IACD;;EAEH,MAAM,aACJ,MACA,QACA,KACA;AACA,QACE;IACE,OAAO;IACP,MAAM,KAAK,KAAK;IAChB,QAAQ,KAAK,KAAK;IAClB,aAAa,KAAK,KAAK;IACvB,UAAU,OAAO;IACjB,WAAW,OAAO;IAClB,WAAW,OAAO;IACnB,EACD,IACD;;EAEJ"}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@prisma-next/middleware-telemetry",
3
- "version": "0.5.0-dev.1",
3
+ "version": "0.5.0-dev.11",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "description": "Generic telemetry middleware for Prisma Next runtimes",
7
7
  "dependencies": {
8
- "@prisma-next/contract": "0.5.0-dev.1",
9
- "@prisma-next/framework-components": "0.5.0-dev.1"
8
+ "@prisma-next/contract": "0.5.0-dev.11",
9
+ "@prisma-next/framework-components": "0.5.0-dev.11"
10
10
  },
11
11
  "devDependencies": {
12
12
  "tsdown": "0.18.4",
@@ -19,7 +19,9 @@ export interface TelemetryMiddlewareOptions {
19
19
  readonly onEvent?: (event: TelemetryEvent) => void;
20
20
  }
21
21
 
22
- export function createTelemetryMiddleware(options?: TelemetryMiddlewareOptions): RuntimeMiddleware {
22
+ export function createTelemetryMiddleware(
23
+ options?: TelemetryMiddlewareOptions,
24
+ ): RuntimeMiddleware & { readonly familyId?: undefined; readonly targetId?: undefined } {
23
25
  const emit = (event: TelemetryEvent, ctx: RuntimeMiddlewareContext) => {
24
26
  try {
25
27
  if (options?.onEvent) {