@effect-app/infra 1.31.0 → 1.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/_cjs/api/routing/schema/jwt.cjs.map +1 -1
  3. package/_cjs/api/routing.cjs +46 -4
  4. package/_cjs/api/routing.cjs.map +1 -1
  5. package/_cjs/services/QueueMaker/SQLQueue.cjs +7 -1
  6. package/_cjs/services/QueueMaker/SQLQueue.cjs.map +1 -1
  7. package/_cjs/services/QueueMaker/errors.cjs.map +1 -1
  8. package/_cjs/services/QueueMaker/memQueue.cjs +7 -1
  9. package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
  10. package/_cjs/services/QueueMaker/sbqueue.cjs +7 -1
  11. package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
  12. package/dist/api/routing/schema/jwt.d.ts +1 -1
  13. package/dist/api/routing/schema/jwt.d.ts.map +1 -1
  14. package/dist/api/routing/schema/jwt.js +1 -1
  15. package/dist/api/routing.d.ts +11 -28
  16. package/dist/api/routing.d.ts.map +1 -1
  17. package/dist/api/routing.js +70 -7
  18. package/dist/services/QueueMaker/SQLQueue.d.ts +2 -2
  19. package/dist/services/QueueMaker/SQLQueue.d.ts.map +1 -1
  20. package/dist/services/QueueMaker/SQLQueue.js +8 -2
  21. package/dist/services/QueueMaker/errors.d.ts +1 -1
  22. package/dist/services/QueueMaker/errors.d.ts.map +1 -1
  23. package/dist/services/QueueMaker/errors.js +1 -1
  24. package/dist/services/QueueMaker/memQueue.d.ts +1 -1
  25. package/dist/services/QueueMaker/memQueue.d.ts.map +1 -1
  26. package/dist/services/QueueMaker/memQueue.js +8 -2
  27. package/dist/services/QueueMaker/sbqueue.d.ts +1 -1
  28. package/dist/services/QueueMaker/sbqueue.d.ts.map +1 -1
  29. package/dist/services/QueueMaker/sbqueue.js +8 -2
  30. package/dist/services/Store/service.d.ts +1 -1
  31. package/package.json +3 -3
  32. package/src/api/routing/schema/jwt.ts +1 -1
  33. package/src/api/routing.ts +89 -23
  34. package/src/services/QueueMaker/SQLQueue.ts +8 -1
  35. package/src/services/QueueMaker/errors.ts +1 -1
  36. package/src/services/QueueMaker/memQueue.ts +8 -1
  37. package/src/services/QueueMaker/sbqueue.ts +10 -1
  38. package/src/services/Store/service.ts +1 -1
@@ -191,7 +191,14 @@ export function makeSQLQueue<
191
191
  )
192
192
  ),
193
193
  silenceAndReportError,
194
- Effect.forever
194
+ Effect.forever,
195
+ Effect.withSpan(`queue.drain: ${queueDrainName}`, {
196
+ attributes: {
197
+ "queue.type": "sql",
198
+ "queue.name": queueDrainName,
199
+ "queue.sessionId": sessionId
200
+ }
201
+ })
195
202
  )
196
203
  })
197
204
  } satisfies QueueBase<Evt, DrainEvt>
@@ -5,7 +5,7 @@ import { MainFiberSet } from "effect-app/services/MainFiberSet"
5
5
 
6
6
  const reportQueueError_ = reportError("Queue")
7
7
 
8
- export const reportQueueError = <E>(cause: Cause<E>, extras?: Record<string, unknown> | undefined) =>
8
+ export const reportQueueError = <E>(cause: Cause<E>, extras?: Record<string, unknown>) =>
9
9
  reportQueueError_(cause, extras)
10
10
 
11
11
  /**
@@ -115,7 +115,14 @@ export function makeMemQueue<
115
115
  // TODO: normally a failed item would be returned to the queue and retried up to X times.
116
116
  // .flatMap(_ => _._tag === "Failure" && !isInterrupted ? qDrain.offer(x) : Effect.unit) // TODO: retry count tracking and max retries.
117
117
  silenceAndReportError,
118
- Effect.forever
118
+ Effect.forever,
119
+ Effect.withSpan(`queue.drain: ${queueDrainName}`, {
120
+ attributes: {
121
+ "queue.type": "mem",
122
+ "queue.name": queueDrainName,
123
+ "queue.sessionId": sessionId
124
+ }
125
+ })
119
126
  )
120
127
  })
121
128
  } satisfies QueueBase<Evt, DrainEvt>
@@ -126,7 +126,16 @@ export function makeServiceBusQueue<
126
126
  .pipe(Effect.provideService(ServiceBusReceiverFactory, receiver))
127
127
  })
128
128
  // .pipe(Effect.andThen(Deferred.await(deferred).pipe(Effect.orDie))),
129
- .pipe(Effect.andThen(Effect.never)),
129
+ .pipe(
130
+ Effect.andThen(Effect.never),
131
+ Effect.withSpan(`queue.drain: ${queueDrainName}`, {
132
+ attributes: {
133
+ "queue.type": "servicebus",
134
+ "queue.name": queueDrainName,
135
+ "queue.sessionId": sessionId
136
+ }
137
+ })
138
+ ),
130
139
 
131
140
  publish: (...messages) =>
132
141
  Effect
@@ -159,7 +159,7 @@ const makeMap = Effect.sync(() => makeContextMap())
159
159
  export class ContextMap extends Context.TagMakeId("effect-app/ContextMap", makeMap)<ContextMap>() {
160
160
  }
161
161
 
162
- export type PersistenceModelType<Encoded extends Object> = Encoded & {
162
+ export type PersistenceModelType<Encoded extends object> = Encoded & {
163
163
  _etag?: string | undefined
164
164
  }
165
165