@proompteng/temporal-bun-sdk 0.3.0 → 0.5.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 (170) hide show
  1. package/README.md +54 -11
  2. package/dist/src/bin/replay-command.d.ts.map +1 -1
  3. package/dist/src/bin/replay-command.js +6 -2
  4. package/dist/src/bin/replay-command.js.map +1 -1
  5. package/dist/src/bin/temporal-bun.d.ts +1 -1
  6. package/dist/src/bin/temporal-bun.d.ts.map +1 -1
  7. package/dist/src/bin/temporal-bun.js +75 -1
  8. package/dist/src/bin/temporal-bun.js.map +1 -1
  9. package/dist/src/client/layer.d.ts +2 -2
  10. package/dist/src/client/layer.d.ts.map +1 -1
  11. package/dist/src/client/retries.d.ts.map +1 -1
  12. package/dist/src/client/retries.js +27 -3
  13. package/dist/src/client/retries.js.map +1 -1
  14. package/dist/src/client/serialization.d.ts +4 -1
  15. package/dist/src/client/serialization.d.ts.map +1 -1
  16. package/dist/src/client/serialization.js +2 -2
  17. package/dist/src/client/serialization.js.map +1 -1
  18. package/dist/src/client.d.ts +12 -4
  19. package/dist/src/client.d.ts.map +1 -1
  20. package/dist/src/client.js +270 -63
  21. package/dist/src/client.js.map +1 -1
  22. package/dist/src/common/payloads/codecs.d.ts +38 -0
  23. package/dist/src/common/payloads/codecs.d.ts.map +1 -0
  24. package/dist/src/common/payloads/codecs.js +174 -0
  25. package/dist/src/common/payloads/codecs.js.map +1 -0
  26. package/dist/src/common/payloads/converter.d.ts +52 -3
  27. package/dist/src/common/payloads/converter.d.ts.map +1 -1
  28. package/dist/src/common/payloads/converter.js +340 -2
  29. package/dist/src/common/payloads/converter.js.map +1 -1
  30. package/dist/src/common/payloads/failure.d.ts +5 -6
  31. package/dist/src/common/payloads/failure.d.ts.map +1 -1
  32. package/dist/src/common/payloads/failure.js +3 -52
  33. package/dist/src/common/payloads/failure.js.map +1 -1
  34. package/dist/src/common/payloads/index.d.ts +1 -0
  35. package/dist/src/common/payloads/index.d.ts.map +1 -1
  36. package/dist/src/common/payloads/index.js +1 -0
  37. package/dist/src/common/payloads/index.js.map +1 -1
  38. package/dist/src/common/payloads/json-codec.d.ts.map +1 -1
  39. package/dist/src/common/payloads/json-codec.js +4 -6
  40. package/dist/src/common/payloads/json-codec.js.map +1 -1
  41. package/dist/src/config.d.ts +25 -0
  42. package/dist/src/config.d.ts.map +1 -1
  43. package/dist/src/config.js +111 -1
  44. package/dist/src/config.js.map +1 -1
  45. package/dist/src/interceptors/client.d.ts +28 -0
  46. package/dist/src/interceptors/client.d.ts.map +1 -0
  47. package/dist/src/interceptors/client.js +190 -0
  48. package/dist/src/interceptors/client.js.map +1 -0
  49. package/dist/src/interceptors/types.d.ts +33 -0
  50. package/dist/src/interceptors/types.d.ts.map +1 -0
  51. package/dist/src/interceptors/types.js +44 -0
  52. package/dist/src/interceptors/types.js.map +1 -0
  53. package/dist/src/interceptors/worker.d.ts +22 -0
  54. package/dist/src/interceptors/worker.d.ts.map +1 -0
  55. package/dist/src/interceptors/worker.js +177 -0
  56. package/dist/src/interceptors/worker.js.map +1 -0
  57. package/dist/src/observability/index.d.ts +4 -0
  58. package/dist/src/observability/index.d.ts.map +1 -1
  59. package/dist/src/observability/index.js +4 -0
  60. package/dist/src/observability/index.js.map +1 -1
  61. package/dist/src/observability/metrics.d.ts.map +1 -1
  62. package/dist/src/observability/metrics.js +70 -10
  63. package/dist/src/observability/metrics.js.map +1 -1
  64. package/dist/src/observability/opentelemetry.d.ts +20 -0
  65. package/dist/src/observability/opentelemetry.d.ts.map +1 -0
  66. package/dist/src/observability/opentelemetry.js +334 -0
  67. package/dist/src/observability/opentelemetry.js.map +1 -0
  68. package/dist/src/proto/temporal/api/activity/v1/message_pb.js +1 -1
  69. package/dist/src/proto/temporal/api/batch/v1/message_pb.js +1 -1
  70. package/dist/src/proto/temporal/api/command/v1/message_pb.js +1 -1
  71. package/dist/src/proto/temporal/api/common/v1/message_pb.js +1 -1
  72. package/dist/src/proto/temporal/api/deployment/v1/message_pb.js +1 -1
  73. package/dist/src/proto/temporal/api/enums/v1/batch_operation_pb.js +1 -1
  74. package/dist/src/proto/temporal/api/enums/v1/command_type_pb.js +1 -1
  75. package/dist/src/proto/temporal/api/enums/v1/common_pb.js +1 -1
  76. package/dist/src/proto/temporal/api/enums/v1/deployment_pb.js +1 -1
  77. package/dist/src/proto/temporal/api/enums/v1/event_type_pb.js +1 -1
  78. package/dist/src/proto/temporal/api/enums/v1/failed_cause_pb.js +1 -1
  79. package/dist/src/proto/temporal/api/enums/v1/namespace_pb.js +1 -1
  80. package/dist/src/proto/temporal/api/enums/v1/nexus_pb.js +1 -1
  81. package/dist/src/proto/temporal/api/enums/v1/query_pb.js +1 -1
  82. package/dist/src/proto/temporal/api/enums/v1/reset_pb.js +1 -1
  83. package/dist/src/proto/temporal/api/enums/v1/schedule_pb.js +1 -1
  84. package/dist/src/proto/temporal/api/enums/v1/task_queue_pb.js +1 -1
  85. package/dist/src/proto/temporal/api/enums/v1/update_pb.js +1 -1
  86. package/dist/src/proto/temporal/api/enums/v1/workflow_pb.js +1 -1
  87. package/dist/src/proto/temporal/api/errordetails/v1/message_pb.js +1 -1
  88. package/dist/src/proto/temporal/api/export/v1/message_pb.js +1 -1
  89. package/dist/src/proto/temporal/api/failure/v1/message_pb.js +1 -1
  90. package/dist/src/proto/temporal/api/filter/v1/message_pb.js +1 -1
  91. package/dist/src/proto/temporal/api/history/v1/message_pb.js +1 -1
  92. package/dist/src/proto/temporal/api/namespace/v1/message_pb.js +1 -1
  93. package/dist/src/proto/temporal/api/nexus/v1/message_pb.js +1 -1
  94. package/dist/src/proto/temporal/api/operatorservice/v1/request_response_pb.js +1 -1
  95. package/dist/src/proto/temporal/api/operatorservice/v1/service_pb.js +1 -1
  96. package/dist/src/proto/temporal/api/protocol/v1/message_pb.js +1 -1
  97. package/dist/src/proto/temporal/api/query/v1/message_pb.js +1 -1
  98. package/dist/src/proto/temporal/api/replication/v1/message_pb.js +1 -1
  99. package/dist/src/proto/temporal/api/rules/v1/message_pb.js +1 -1
  100. package/dist/src/proto/temporal/api/sdk/v1/enhanced_stack_trace_pb.js +1 -1
  101. package/dist/src/proto/temporal/api/sdk/v1/task_complete_metadata_pb.js +1 -1
  102. package/dist/src/proto/temporal/api/sdk/v1/user_metadata_pb.js +1 -1
  103. package/dist/src/proto/temporal/api/sdk/v1/worker_config_pb.js +1 -1
  104. package/dist/src/proto/temporal/api/sdk/v1/workflow_metadata_pb.js +1 -1
  105. package/dist/src/proto/temporal/api/taskqueue/v1/message_pb.js +1 -1
  106. package/dist/src/proto/temporal/api/update/v1/message_pb.js +1 -1
  107. package/dist/src/proto/temporal/api/version/v1/message_pb.js +1 -1
  108. package/dist/src/proto/temporal/api/worker/v1/message_pb.js +1 -1
  109. package/dist/src/proto/temporal/api/workflow/v1/message_pb.js +1 -1
  110. package/dist/src/proto/temporal/api/workflowservice/v1/request_response_pb.js +1 -1
  111. package/dist/src/proto/temporal/api/workflowservice/v1/service_pb.js +1 -1
  112. package/dist/src/runtime/cli-layer.d.ts +4 -3
  113. package/dist/src/runtime/cli-layer.d.ts.map +1 -1
  114. package/dist/src/runtime/cli-layer.js +5 -2
  115. package/dist/src/runtime/cli-layer.js.map +1 -1
  116. package/dist/src/runtime/effect-layers.d.ts +9 -0
  117. package/dist/src/runtime/effect-layers.d.ts.map +1 -1
  118. package/dist/src/runtime/effect-layers.js +15 -0
  119. package/dist/src/runtime/effect-layers.js.map +1 -1
  120. package/dist/src/worker/runtime.d.ts +6 -0
  121. package/dist/src/worker/runtime.d.ts.map +1 -1
  122. package/dist/src/worker/runtime.js +853 -70
  123. package/dist/src/worker/runtime.js.map +1 -1
  124. package/dist/src/worker/sticky-cache.d.ts +15 -0
  125. package/dist/src/worker/sticky-cache.d.ts.map +1 -1
  126. package/dist/src/worker/sticky-cache.js +26 -0
  127. package/dist/src/worker/sticky-cache.js.map +1 -1
  128. package/dist/src/worker/update-protocol.d.ts.map +1 -1
  129. package/dist/src/worker/update-protocol.js +15 -0
  130. package/dist/src/worker/update-protocol.js.map +1 -1
  131. package/dist/src/worker.js +1 -0
  132. package/dist/src/worker.js.map +1 -1
  133. package/dist/src/workflow/commands.d.ts +40 -3
  134. package/dist/src/workflow/commands.d.ts.map +1 -1
  135. package/dist/src/workflow/commands.js +161 -7
  136. package/dist/src/workflow/commands.js.map +1 -1
  137. package/dist/src/workflow/context.d.ts +59 -2
  138. package/dist/src/workflow/context.d.ts.map +1 -1
  139. package/dist/src/workflow/context.js +345 -16
  140. package/dist/src/workflow/context.js.map +1 -1
  141. package/dist/src/workflow/definition.js.map +1 -1
  142. package/dist/src/workflow/determinism.d.ts +9 -0
  143. package/dist/src/workflow/determinism.d.ts.map +1 -1
  144. package/dist/src/workflow/determinism.js +145 -16
  145. package/dist/src/workflow/determinism.js.map +1 -1
  146. package/dist/src/workflow/errors.d.ts +3 -0
  147. package/dist/src/workflow/errors.d.ts.map +1 -1
  148. package/dist/src/workflow/errors.js +6 -0
  149. package/dist/src/workflow/errors.js.map +1 -1
  150. package/dist/src/workflow/executor.d.ts +6 -0
  151. package/dist/src/workflow/executor.d.ts.map +1 -1
  152. package/dist/src/workflow/executor.js +147 -18
  153. package/dist/src/workflow/executor.js.map +1 -1
  154. package/dist/src/workflow/inbound.d.ts +1 -0
  155. package/dist/src/workflow/inbound.d.ts.map +1 -1
  156. package/dist/src/workflow/inbound.js +1 -0
  157. package/dist/src/workflow/inbound.js.map +1 -1
  158. package/dist/src/workflow/index.d.ts +5 -0
  159. package/dist/src/workflow/index.d.ts.map +1 -1
  160. package/dist/src/workflow/index.js +3 -0
  161. package/dist/src/workflow/index.js.map +1 -1
  162. package/dist/src/workflow/log.d.ts +18 -0
  163. package/dist/src/workflow/log.d.ts.map +1 -0
  164. package/dist/src/workflow/log.js +36 -0
  165. package/dist/src/workflow/log.js.map +1 -0
  166. package/dist/src/workflow/replay.d.ts +31 -3
  167. package/dist/src/workflow/replay.d.ts.map +1 -1
  168. package/dist/src/workflow/replay.js +763 -67
  169. package/dist/src/workflow/replay.js.map +1 -1
  170. package/package.json +4 -3
@@ -0,0 +1,44 @@
1
+ import { Effect } from 'effect';
2
+ const byOrder = (a, b) => (a.order ?? 0) - (b.order ?? 0);
3
+ const matchesKind = (interceptor, kind) => {
4
+ if (!interceptor.kinds || interceptor.kinds.length === 0) {
5
+ return true;
6
+ }
7
+ return interceptor.kinds.includes(kind);
8
+ };
9
+ export const runInterceptors = (interceptors, baseContext, run) => {
10
+ const applicable = interceptors.filter((interceptor) => matchesKind(interceptor, baseContext.kind)).sort(byOrder);
11
+ const start = baseContext.startedAt ?? Date.now();
12
+ const outboundContext = Object.assign(baseContext, {
13
+ startedAt: start,
14
+ direction: 'outbound',
15
+ });
16
+ const outboundPipeline = applicable.reduceRight((next, interceptor) => {
17
+ if (!interceptor.outbound) {
18
+ return next;
19
+ }
20
+ return () => interceptor.outbound(outboundContext, next);
21
+ }, run);
22
+ const runInbound = (result, error) => {
23
+ const inboundContext = {
24
+ ...outboundContext,
25
+ direction: 'inbound',
26
+ durationMs: Date.now() - start,
27
+ result,
28
+ error,
29
+ };
30
+ const terminal = () => (error ? Effect.fail(error) : Effect.succeed(result));
31
+ const inboundPipeline = applicable.reduceRight((next, interceptor) => {
32
+ if (!interceptor.inbound) {
33
+ return next;
34
+ }
35
+ return () => interceptor.inbound(inboundContext, next);
36
+ }, terminal);
37
+ return inboundPipeline();
38
+ };
39
+ return outboundPipeline().pipe(Effect.matchEffect({
40
+ onSuccess: (result) => runInbound(result, undefined),
41
+ onFailure: (error) => runInbound(undefined, error),
42
+ }));
43
+ };
44
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/interceptors/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAoD/B,MAAM,OAAO,GAAG,CAAC,CAAsB,EAAE,CAAsB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;AAEnG,MAAM,WAAW,GAAG,CAAC,WAAgC,EAAE,IAAqB,EAAW,EAAE;IACvF,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AACzC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,YAA+C,EAC/C,WAAkD,EAClD,GAAuB,EACW,EAAE;IACpC,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACjH,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA;IACjD,MAAM,eAAe,GAAuB,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE;QACrE,SAAS,EAAE,KAAK;QAChB,SAAS,EAAE,UAAmB;KAC/B,CAAC,CAAA;IAEF,MAAM,gBAAgB,GAAG,UAAU,CAAC,WAAW,CAAqB,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE;QACxF,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAA;QACb,CAAC;QACD,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;IAC1D,CAAC,EAAE,GAAG,CAAC,CAAA;IAEP,MAAM,UAAU,GAAG,CAAC,MAAqB,EAAE,KAAc,EAAoC,EAAE;QAC7F,MAAM,cAAc,GAAuB;YACzC,GAAG,eAAe;YAClB,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;YAC9B,MAAM;YACN,KAAK;SACN,CAAA;QACD,MAAM,QAAQ,GAAuB,GAAG,EAAE,CACxC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAW,CAAC,CAAqC,CAAA;QAEhG,MAAM,eAAe,GAAG,UAAU,CAAC,WAAW,CAAqB,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE;YACvF,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAA;YACb,CAAC;YACD,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;QACxD,CAAC,EAAE,QAAQ,CAAC,CAAA;QACZ,OAAO,eAAe,EAAE,CAAA;IAC1B,CAAC,CAAA;IAED,OAAO,gBAAgB,EAAE,CAAC,IAAI,CAC5B,MAAM,CAAC,WAAW,CAAC;QACjB,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC;QACpD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;KACnD,CAAC,CACH,CAAA;AACH,CAAC,CAAA"}
@@ -0,0 +1,22 @@
1
+ import { Effect } from 'effect';
2
+ import type { DataConverter } from '../common/payloads';
3
+ import type { Logger } from '../observability/logger';
4
+ import type { MetricsExporter, MetricsRegistry } from '../observability/metrics';
5
+ import { runInterceptors, type TemporalInterceptor } from './types';
6
+ export interface WorkerInterceptorBuilderInput {
7
+ namespace: string;
8
+ taskQueue: string;
9
+ identity: string;
10
+ buildId?: string;
11
+ logger: Logger;
12
+ metricsRegistry: MetricsRegistry;
13
+ metricsExporter: MetricsExporter;
14
+ dataConverter: DataConverter;
15
+ tracingEnabled?: boolean;
16
+ }
17
+ export type WorkerInterceptorBuilder = {
18
+ readonly build: (input: WorkerInterceptorBuilderInput) => Effect.Effect<TemporalInterceptor[], unknown, never>;
19
+ };
20
+ export declare const makeDefaultWorkerInterceptors: (input: WorkerInterceptorBuilderInput) => Effect.Effect<TemporalInterceptor[], unknown, never>;
21
+ export declare const runWorkerInterceptors: <A>(interceptors: readonly TemporalInterceptor[], context: Omit<Parameters<typeof runInterceptors<A>>[1], "direction">, run: () => Effect.Effect<A, unknown, never>) => Effect.Effect<A, unknown, never>;
22
+ //# sourceMappingURL=worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../../src/interceptors/worker.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,KAAK,EAAsB,eAAe,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AACpG,OAAO,EAAE,eAAe,EAAE,KAAK,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAEnE,MAAM,WAAW,6BAA6B;IAC5C,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,eAAe,EAAE,eAAe,CAAA;IAChC,eAAe,EAAE,eAAe,CAAA;IAChC,aAAa,EAAE,aAAa,CAAA;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,6BAA6B,KAAK,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;CAC/G,CAAA;AA6MD,eAAO,MAAM,6BAA6B,GACxC,OAAO,6BAA6B,KACnC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,EAAE,OAAO,EAAE,KAAK,CAQlD,CAAA;AAEJ,eAAO,MAAM,qBAAqB,GAAI,CAAC,EACrC,cAAc,SAAS,mBAAmB,EAAE,EAC5C,SAAS,IAAI,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,EACpE,KAAK,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,qCACwC,CAAA"}
@@ -0,0 +1,177 @@
1
+ import { randomUUID } from 'node:crypto';
2
+ import { SpanStatusCode, trace } from '@proompteng/otel/api';
3
+ import { Effect } from 'effect';
4
+ import { runInterceptors } from './types';
5
+ const makeWorkerMetricHandles = (registry) => Effect.gen(function* () {
6
+ const workflowCounter = yield* registry.counter('temporal_worker_interceptor_workflow_total', 'Workflow tasks processed with interceptors');
7
+ const workflowErrors = yield* registry.counter('temporal_worker_interceptor_workflow_errors_total', 'Workflow task failures observed by interceptors');
8
+ const workflowLatency = yield* registry.histogram('temporal_worker_interceptor_workflow_latency_ms', 'Workflow task latency seen by interceptors (ms)');
9
+ const activityCounter = yield* registry.counter('temporal_worker_interceptor_activity_total', 'Activity tasks processed with interceptors');
10
+ const activityErrors = yield* registry.counter('temporal_worker_interceptor_activity_errors_total', 'Activity task failures observed by interceptors');
11
+ const activityLatency = yield* registry.histogram('temporal_worker_interceptor_activity_latency_ms', 'Activity task latency seen by interceptors (ms)');
12
+ const queryCounter = yield* registry.counter('temporal_worker_interceptor_query_total', 'Workflow query tasks processed with interceptors');
13
+ const queryErrors = yield* registry.counter('temporal_worker_interceptor_query_errors_total', 'Workflow query failures observed by interceptors');
14
+ const queryLatency = yield* registry.histogram('temporal_worker_interceptor_query_latency_ms', 'Workflow query latency seen by interceptors (ms)');
15
+ const updateCounter = yield* registry.counter('temporal_worker_interceptor_update_total', 'Workflow update tasks processed with interceptors');
16
+ const updateErrors = yield* registry.counter('temporal_worker_interceptor_update_errors_total', 'Workflow update failures observed by interceptors');
17
+ const updateLatency = yield* registry.histogram('temporal_worker_interceptor_update_latency_ms', 'Workflow update latency seen by interceptors (ms)');
18
+ return {
19
+ workflowCounter,
20
+ workflowErrors,
21
+ workflowLatency,
22
+ activityCounter,
23
+ activityErrors,
24
+ activityLatency,
25
+ queryCounter,
26
+ queryErrors,
27
+ queryLatency,
28
+ updateCounter,
29
+ updateErrors,
30
+ updateLatency,
31
+ };
32
+ });
33
+ const metricsInterceptor = (handles) => ({
34
+ name: 'worker-metrics',
35
+ order: -20,
36
+ outbound(context, next) {
37
+ const start = Date.now();
38
+ let counter;
39
+ let errors;
40
+ let latency;
41
+ switch (context.kind) {
42
+ case 'worker.workflowTask':
43
+ counter = handles.workflowCounter;
44
+ errors = handles.workflowErrors;
45
+ latency = handles.workflowLatency;
46
+ break;
47
+ case 'worker.activityTask':
48
+ counter = handles.activityCounter;
49
+ errors = handles.activityErrors;
50
+ latency = handles.activityLatency;
51
+ break;
52
+ case 'worker.queryTask':
53
+ counter = handles.queryCounter;
54
+ errors = handles.queryErrors;
55
+ latency = handles.queryLatency;
56
+ break;
57
+ case 'worker.updateTask':
58
+ counter = handles.updateCounter;
59
+ errors = handles.updateErrors;
60
+ latency = handles.updateLatency;
61
+ break;
62
+ default:
63
+ break;
64
+ }
65
+ return Effect.gen(function* () {
66
+ if (counter) {
67
+ yield* counter.inc();
68
+ }
69
+ try {
70
+ const result = yield* next();
71
+ if (latency) {
72
+ yield* latency.observe(Date.now() - start);
73
+ }
74
+ return result;
75
+ }
76
+ catch (error) {
77
+ if (errors) {
78
+ yield* errors.inc();
79
+ }
80
+ if (latency) {
81
+ yield* latency.observe(Date.now() - start);
82
+ }
83
+ throw error;
84
+ }
85
+ });
86
+ },
87
+ });
88
+ const loggingInterceptor = (logger) => ({
89
+ name: 'worker-logging',
90
+ order: -10,
91
+ outbound(context, next) {
92
+ const base = {
93
+ kind: context.kind,
94
+ namespace: context.namespace,
95
+ taskQueue: context.taskQueue,
96
+ workflowId: context.workflowId,
97
+ runId: context.runId,
98
+ attempt: context.attempt,
99
+ };
100
+ return Effect.gen(function* () {
101
+ yield* logger.log('debug', 'worker task start', base);
102
+ const start = Date.now();
103
+ try {
104
+ const result = yield* next();
105
+ yield* logger.log('debug', 'worker task finish', { ...base, durationMs: Date.now() - start });
106
+ return result;
107
+ }
108
+ catch (error) {
109
+ yield* logger.log('error', 'worker task failure', {
110
+ ...base,
111
+ durationMs: Date.now() - start,
112
+ error: error instanceof Error ? error.message : String(error),
113
+ });
114
+ throw error;
115
+ }
116
+ });
117
+ },
118
+ });
119
+ const tracingInterceptor = (logger) => ({
120
+ name: 'worker-trace',
121
+ order: -5,
122
+ outbound(context, next) {
123
+ const traceId = randomUUID();
124
+ const tracer = trace.getTracer('temporal-bun-sdk');
125
+ const span = tracer.startSpan(`temporal.worker.${context.kind}`, {
126
+ attributes: {
127
+ 'temporal.kind': context.kind,
128
+ 'temporal.namespace': context.namespace,
129
+ 'temporal.task_queue': context.taskQueue ?? '',
130
+ 'temporal.identity': context.identity ?? '',
131
+ 'temporal.workflow_id': context.workflowId ?? '',
132
+ 'temporal.run_id': context.runId ?? '',
133
+ 'temporal.attempt': context.attempt ?? 0,
134
+ 'temporal.build_id': context.buildId ?? '',
135
+ },
136
+ });
137
+ return Effect.gen(function* () {
138
+ yield* logger.log('debug', 'worker trace start', { traceId, kind: context.kind });
139
+ try {
140
+ const result = yield* next();
141
+ span.setStatus({ code: SpanStatusCode.OK });
142
+ yield* logger.log('debug', 'worker trace finish', {
143
+ traceId,
144
+ kind: context.kind,
145
+ });
146
+ span.end();
147
+ return result;
148
+ }
149
+ catch (error) {
150
+ span.recordException(error);
151
+ span.setStatus({ code: SpanStatusCode.ERROR });
152
+ yield* logger.log('error', 'worker trace error', {
153
+ traceId,
154
+ kind: context.kind,
155
+ error: error instanceof Error ? error.message : String(error),
156
+ });
157
+ span.end();
158
+ throw error;
159
+ }
160
+ finally {
161
+ if (span.isRecording()) {
162
+ span.end();
163
+ }
164
+ }
165
+ });
166
+ },
167
+ });
168
+ export const makeDefaultWorkerInterceptors = (input) => Effect.gen(function* () {
169
+ const metrics = yield* makeWorkerMetricHandles(input.metricsRegistry);
170
+ const interceptors = [metricsInterceptor(metrics), loggingInterceptor(input.logger)];
171
+ if (input.tracingEnabled) {
172
+ interceptors.push(tracingInterceptor(input.logger));
173
+ }
174
+ return interceptors;
175
+ });
176
+ export const runWorkerInterceptors = (interceptors, context, run) => runInterceptors(interceptors, context, run);
177
+ //# sourceMappingURL=worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../../src/interceptors/worker.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { Effect } from 'effect';
2
2
  import type { LogFormat, Logger, LogLevel } from './logger';
3
3
  import type { MetricsExporter, MetricsExporterSpec, MetricsRegistry } from './metrics';
4
+ import type { OpenTelemetryHandle } from './opentelemetry';
4
5
  export interface ObservabilityConfig {
5
6
  readonly logLevel: LogLevel;
6
7
  readonly logFormat: LogFormat;
@@ -15,7 +16,10 @@ export interface ObservabilityServices {
15
16
  readonly logger: Logger;
16
17
  readonly metricsRegistry: MetricsRegistry;
17
18
  readonly metricsExporter: MetricsExporter;
19
+ readonly openTelemetry?: OpenTelemetryHandle;
18
20
  }
19
21
  export declare const createObservabilityServices: (config: ObservabilityConfig, overrides?: ObservabilityOverrides) => Effect.Effect<ObservabilityServices, never, never>;
20
22
  export declare const defaultObservabilityConfig: ObservabilityConfig;
23
+ export type { OpenTelemetryConfig, OpenTelemetryHandle } from './opentelemetry';
24
+ export { registerOpenTelemetry } from './opentelemetry';
21
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/observability/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAE3D,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAQtF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAA;CACtC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAA;IAC1C,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAA;CAC3C;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAA;IACzC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAA;CAC1C;AAED,eAAO,MAAM,2BAA2B,GACtC,QAAQ,mBAAmB,EAC3B,YAAW,sBAA2B,KACrC,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,KAAK,EAAE,KAAK,CAUhD,CAAA;AAEJ,eAAO,MAAM,0BAA0B,EAAE,mBAIxC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/observability/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAE3D,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAOtF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAG1D,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAA;CACtC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAA;IAC1C,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAA;CAC3C;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAA;IACzC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAA;IACzC,QAAQ,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAA;CAC7C;AAED,eAAO,MAAM,2BAA2B,GACtC,QAAQ,mBAAmB,EAC3B,YAAW,sBAA2B,KACrC,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,KAAK,EAAE,KAAK,CAchD,CAAA;AAEJ,eAAO,MAAM,0BAA0B,EAAE,mBAIxC,CAAA;AAED,YAAY,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA"}
@@ -1,14 +1,17 @@
1
1
  import { Effect } from 'effect';
2
2
  import { makeLogger } from './logger';
3
3
  import { cloneMetricsExporterSpec, createMetricsExporter, createMetricsRegistry, defaultMetricsExporterSpec, } from './metrics';
4
+ import { registerOpenTelemetry } from './opentelemetry';
4
5
  export const createObservabilityServices = (config, overrides = {}) => Effect.gen(function* () {
5
6
  const logger = overrides.logger ?? makeLogger({ level: config.logLevel, format: config.logFormat });
6
7
  const exporter = overrides.metricsExporter ?? (yield* createMetricsExporter(config.metrics));
7
8
  const registry = overrides.metricsRegistry ?? createMetricsRegistry(exporter);
9
+ const openTelemetry = yield* Effect.promise(() => registerOpenTelemetry()).pipe(Effect.catchAll(() => Effect.succeed(undefined)));
8
10
  return {
9
11
  logger,
10
12
  metricsRegistry: registry,
11
13
  metricsExporter: exporter,
14
+ openTelemetry,
12
15
  };
13
16
  });
14
17
  export const defaultObservabilityConfig = {
@@ -16,4 +19,5 @@ export const defaultObservabilityConfig = {
16
19
  logFormat: 'pretty',
17
20
  metrics: cloneMetricsExporterSpec(defaultMetricsExporterSpec),
18
21
  };
22
+ export { registerOpenTelemetry } from './opentelemetry';
19
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/observability/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAErC,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,WAAW,CAAA;AAoBlB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CACzC,MAA2B,EAC3B,YAAoC,EAAE,EACc,EAAE,CACtD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,IAAI,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAA;IACnG,MAAM,QAAQ,GAAG,SAAS,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;IAC5F,MAAM,QAAQ,GAAG,SAAS,CAAC,eAAe,IAAI,qBAAqB,CAAC,QAAQ,CAAC,CAAA;IAC7E,OAAO;QACL,MAAM;QACN,eAAe,EAAE,QAAQ;QACzB,eAAe,EAAE,QAAQ;KAC1B,CAAA;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,CAAC,MAAM,0BAA0B,GAAwB;IAC7D,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,wBAAwB,CAAC,0BAA0B,CAAC;CAC9D,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/observability/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAErC,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA;AAqBvD,MAAM,CAAC,MAAM,2BAA2B,GAAG,CACzC,MAA2B,EAC3B,YAAoC,EAAE,EACc,EAAE,CACtD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,IAAI,UAAU,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAA;IACnG,MAAM,QAAQ,GAAG,SAAS,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAA;IAC5F,MAAM,QAAQ,GAAG,SAAS,CAAC,eAAe,IAAI,qBAAqB,CAAC,QAAQ,CAAC,CAAA;IAC7E,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAC7E,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CACjD,CAAA;IACD,OAAO;QACL,MAAM;QACN,eAAe,EAAE,QAAQ;QACzB,eAAe,EAAE,QAAQ;QACzB,aAAa;KACd,CAAA;AACH,CAAC,CAAC,CAAA;AAEJ,MAAM,CAAC,MAAM,0BAA0B,GAAwB;IAC7D,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,QAAQ;IACnB,OAAO,EAAE,wBAAwB,CAAC,0BAA0B,CAAC;CAC9D,CAAA;AAGD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/observability/metrics.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;CACpE;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;CACvE;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAC9F,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;CACnG;AAED,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,YAAY,CAAA;AAE9E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAA;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,eAAO,MAAM,0BAA0B,EAAE,mBAA2C,CAAA;AAEpF,eAAO,MAAM,wBAAwB,GAAI,MAAM,mBAAmB,KAAG,mBAGnE,CAAA;AAEF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAChH,QAAQ,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAClH,QAAQ,CAAC,KAAK,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;CACxD;AAwUD,eAAO,MAAM,qBAAqB,GAAI,MAAM,mBAAmB,KAAG,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CA+BzG,CAAA;AAEJ,eAAO,MAAM,qBAAqB,GAAI,UAAU,eAAe,KAAG,eAAiD,CAAA;AAEnH,eAAO,MAAM,mBAAmB,QAAO,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CACV,CAAA;AAoBxE,eAAO,MAAM,0BAA0B,GAAI,WAAW,MAAM,EAAE,WAAW,MAAM,KAAG,mBA+BjF,CAAA"}
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/observability/metrics.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;CACpE;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;CACvE;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAC9F,QAAQ,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;CACnG;AAED,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,YAAY,CAAA;AAE9E,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAA;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,eAAO,MAAM,0BAA0B,EAAE,mBAA2C,CAAA;AAEpF,eAAO,MAAM,wBAAwB,GAAI,MAAM,mBAAmB,KAAG,mBAGnE,CAAA;AAEF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAChH,QAAQ,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAClH,QAAQ,CAAC,KAAK,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;CACxD;AAkYD,eAAO,MAAM,qBAAqB,GAAI,MAAM,mBAAmB,KAAG,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CAqCzG,CAAA;AAEJ,eAAO,MAAM,qBAAqB,GAAI,UAAU,eAAe,KAAG,eAAiD,CAAA;AAEnH,eAAO,MAAM,mBAAmB,QAAO,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,CACV,CAAA;AAoBxE,eAAO,MAAM,0BAA0B,GAAI,WAAW,MAAM,EAAE,WAAW,MAAM,KAAG,mBA+BjF,CAAA"}
@@ -15,6 +15,60 @@ const ensureDirectory = async (path) => {
15
15
  }
16
16
  };
17
17
  const toUnixNanoString = (milliseconds) => (BigInt(milliseconds) * 1000000n).toString();
18
+ const parseKeyValuePairs = (value) => {
19
+ if (!value) {
20
+ return {};
21
+ }
22
+ const result = {};
23
+ for (const pair of value.split(',')) {
24
+ const [rawKey, ...rawRest] = pair.split('=');
25
+ if (!rawKey || rawRest.length === 0) {
26
+ continue;
27
+ }
28
+ const key = rawKey.trim();
29
+ const rawValue = rawRest.join('=').trim();
30
+ if (!key || !rawValue) {
31
+ continue;
32
+ }
33
+ result[key] = rawValue;
34
+ }
35
+ return result;
36
+ };
37
+ const mergeKeyValuePairs = (...entries) => {
38
+ const merged = {};
39
+ for (const entry of entries) {
40
+ if (!entry) {
41
+ continue;
42
+ }
43
+ Object.assign(merged, entry);
44
+ }
45
+ return merged;
46
+ };
47
+ const resolveOtelMetricHeaders = () => {
48
+ const shared = parseKeyValuePairs(process.env.OTEL_EXPORTER_OTLP_HEADERS);
49
+ const metrics = parseKeyValuePairs(process.env.OTEL_EXPORTER_OTLP_METRICS_HEADERS);
50
+ const merged = mergeKeyValuePairs(shared, metrics);
51
+ return Object.keys(merged).length > 0 ? merged : undefined;
52
+ };
53
+ const resolveOtelResourceAttributes = () => {
54
+ const attributes = parseKeyValuePairs(process.env.OTEL_RESOURCE_ATTRIBUTES);
55
+ const serviceName = process.env.OTEL_SERVICE_NAME ?? process.env.LGTM_SERVICE_NAME ?? 'temporal-bun-sdk';
56
+ if (!attributes['service.name']) {
57
+ attributes['service.name'] = serviceName;
58
+ }
59
+ const serviceNamespace = process.env.OTEL_SERVICE_NAMESPACE ?? process.env.POD_NAMESPACE;
60
+ if (serviceNamespace && !attributes['service.namespace']) {
61
+ attributes['service.namespace'] = serviceNamespace;
62
+ }
63
+ const serviceInstanceId = process.env.OTEL_SERVICE_INSTANCE_ID ?? process.env.POD_NAME ?? process.pid.toString();
64
+ if (serviceInstanceId && !attributes['service.instance.id']) {
65
+ attributes['service.instance.id'] = serviceInstanceId;
66
+ }
67
+ return Object.entries(attributes).map(([key, value]) => ({
68
+ key,
69
+ value: { stringValue: value },
70
+ }));
71
+ };
18
72
  const describeMetricsError = (error) => {
19
73
  if (error instanceof Error) {
20
74
  return `${error.name}: ${error.message}`;
@@ -81,12 +135,16 @@ class FileMetricsExporter {
81
135
  }
82
136
  class OtlpMetricsExporter {
83
137
  #endpoint;
138
+ #headers;
139
+ #resourceAttributes;
84
140
  #counters = new Map();
85
141
  #histograms = new Map();
86
142
  #startTimeUnixNano;
87
143
  constructor(endpoint) {
88
144
  this.#endpoint = endpoint;
89
145
  this.#startTimeUnixNano = toUnixNanoString(Date.now());
146
+ this.#headers = resolveOtelMetricHeaders();
147
+ this.#resourceAttributes = resolveOtelResourceAttributes();
90
148
  }
91
149
  recordCounter(name, value, description) {
92
150
  return Effect.sync(() => {
@@ -132,6 +190,7 @@ class OtlpMetricsExporter {
132
190
  method: 'POST',
133
191
  headers: {
134
192
  'Content-Type': 'application/json',
193
+ ...(this.#headers ?? {}),
135
194
  },
136
195
  body: JSON.stringify(payload),
137
196
  });
@@ -188,12 +247,7 @@ class OtlpMetricsExporter {
188
247
  resourceMetrics: [
189
248
  {
190
249
  resource: {
191
- attributes: [
192
- {
193
- key: 'service.name',
194
- value: { stringValue: 'temporal-bun-sdk' },
195
- },
196
- ],
250
+ attributes: this.#resourceAttributes,
197
251
  },
198
252
  scopeMetrics: [
199
253
  {
@@ -287,14 +341,20 @@ export const createMetricsExporter = (spec) => Effect.gen(function* () {
287
341
  if (!spec.endpoint) {
288
342
  throw new Error('File metrics exporter requires an endpoint (file path)');
289
343
  }
290
- yield* swallowMetricsFailure(Effect.tryPromise(() => ensureDirectory(spec.endpoint)), `prepare file metrics output ${spec.endpoint}`);
291
- return new FileMetricsExporter(spec.endpoint);
344
+ {
345
+ const fileEndpoint = spec.endpoint;
346
+ yield* swallowMetricsFailure(Effect.tryPromise(() => ensureDirectory(fileEndpoint)), `prepare file metrics output ${fileEndpoint}`);
347
+ return new FileMetricsExporter(fileEndpoint);
348
+ }
292
349
  case 'prometheus':
293
350
  if (!spec.endpoint) {
294
351
  throw new Error('Prometheus exporter requires a target endpoint to write to');
295
352
  }
296
- yield* swallowMetricsFailure(Effect.tryPromise(() => ensureDirectory(spec.endpoint)), `prepare Prometheus metrics output ${spec.endpoint}`);
297
- return new PrometheusMetricsExporter(spec.endpoint);
353
+ {
354
+ const prometheusEndpoint = spec.endpoint;
355
+ yield* swallowMetricsFailure(Effect.tryPromise(() => ensureDirectory(prometheusEndpoint)), `prepare Prometheus metrics output ${prometheusEndpoint}`);
356
+ return new PrometheusMetricsExporter(prometheusEndpoint);
357
+ }
298
358
  case 'otlp':
299
359
  if (!spec.endpoint) {
300
360
  throw new Error('OTLP exporter requires an endpoint URL');
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/observability/metrics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/observability/metrics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ export interface OpenTelemetryConfig {
2
+ enabled?: boolean;
3
+ serviceName?: string;
4
+ serviceNamespace?: string;
5
+ serviceInstanceId?: string;
6
+ tracesEndpoint?: string;
7
+ metricsEndpoint?: string;
8
+ exportIntervalMs?: number;
9
+ metricExportTimeoutMs?: number;
10
+ traceTimeoutMs?: number;
11
+ metricTimeoutMs?: number;
12
+ headers?: Record<string, string>;
13
+ traceHeaders?: Record<string, string>;
14
+ metricHeaders?: Record<string, string>;
15
+ }
16
+ export interface OpenTelemetryHandle {
17
+ shutdown: () => Promise<void>;
18
+ }
19
+ export declare const registerOpenTelemetry: (options?: OpenTelemetryConfig) => Promise<OpenTelemetryHandle | undefined>;
20
+ //# sourceMappingURL=opentelemetry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opentelemetry.d.ts","sourceRoot":"","sources":["../../../src/observability/opentelemetry.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,mBAAmB;IAClC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACvC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC9B;AA0BD,eAAO,MAAM,qBAAqB,GAChC,UAAS,mBAAwB,KAChC,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAczC,CAAA"}