@smthrs/observability 0.35.0 → 1.0.0-rc.12

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 (363) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/LICENSE +1 -1
  3. package/README.md +87 -0
  4. package/dist/cjs/BrowserOtel.d.ts +37 -0
  5. package/dist/cjs/BrowserOtel.d.ts.map +1 -0
  6. package/dist/cjs/BrowserOtel.js +47 -0
  7. package/dist/cjs/BrowserOtel.js.map +7 -0
  8. package/dist/cjs/Endpoint.d.ts +70 -0
  9. package/dist/cjs/Endpoint.d.ts.map +1 -0
  10. package/dist/cjs/Endpoint.js +85 -0
  11. package/dist/cjs/Endpoint.js.map +7 -0
  12. package/dist/cjs/JournalLogger.d.ts +232 -0
  13. package/dist/cjs/JournalLogger.d.ts.map +1 -0
  14. package/dist/cjs/JournalLogger.js +415 -0
  15. package/dist/cjs/JournalLogger.js.map +7 -0
  16. package/dist/cjs/Logger.d.ts +56 -0
  17. package/dist/cjs/Logger.d.ts.map +1 -0
  18. package/dist/cjs/Logger.js +72 -0
  19. package/dist/cjs/Logger.js.map +7 -0
  20. package/dist/cjs/Metric.d.ts +67 -0
  21. package/dist/cjs/Metric.d.ts.map +1 -0
  22. package/dist/cjs/Metric.js +68 -0
  23. package/dist/cjs/Metric.js.map +7 -0
  24. package/dist/cjs/NodeOtel.d.ts +42 -0
  25. package/dist/cjs/NodeOtel.d.ts.map +1 -0
  26. package/dist/cjs/NodeOtel.js +78 -0
  27. package/dist/cjs/NodeOtel.js.map +7 -0
  28. package/dist/cjs/Otel.d.ts +63 -0
  29. package/dist/cjs/Otel.d.ts.map +1 -0
  30. package/dist/cjs/Otel.js +75 -0
  31. package/dist/cjs/Otel.js.map +7 -0
  32. package/dist/cjs/Otlp.d.ts +203 -0
  33. package/dist/cjs/Otlp.d.ts.map +1 -0
  34. package/dist/cjs/Otlp.js +251 -0
  35. package/dist/cjs/Otlp.js.map +7 -0
  36. package/dist/cjs/Resource.d.ts +163 -0
  37. package/dist/cjs/Resource.d.ts.map +1 -0
  38. package/dist/cjs/Resource.js +186 -0
  39. package/dist/cjs/Resource.js.map +7 -0
  40. package/dist/cjs/index.d.ts +61 -0
  41. package/dist/cjs/index.d.ts.map +1 -0
  42. package/dist/cjs/index.js +47 -0
  43. package/dist/cjs/index.js.map +7 -0
  44. package/dist/cjs/internal/schemaIssuePath.d.ts +31 -0
  45. package/dist/cjs/internal/schemaIssuePath.d.ts.map +1 -0
  46. package/dist/cjs/internal/schemaIssuePath.js +49 -0
  47. package/dist/cjs/internal/schemaIssuePath.js.map +7 -0
  48. package/dist/cjs/package.json +1 -0
  49. package/dist/esm/BrowserOtel.d.ts +37 -0
  50. package/dist/esm/BrowserOtel.d.ts.map +1 -0
  51. package/dist/esm/BrowserOtel.js +24 -0
  52. package/dist/esm/BrowserOtel.js.map +1 -0
  53. package/dist/esm/Endpoint.d.ts +70 -0
  54. package/dist/esm/Endpoint.d.ts.map +1 -0
  55. package/dist/esm/Endpoint.js +110 -0
  56. package/dist/esm/Endpoint.js.map +1 -0
  57. package/dist/esm/JournalLogger.d.ts +232 -0
  58. package/dist/esm/JournalLogger.d.ts.map +1 -0
  59. package/dist/esm/JournalLogger.js +520 -0
  60. package/dist/esm/JournalLogger.js.map +1 -0
  61. package/dist/esm/Logger.d.ts +56 -0
  62. package/dist/esm/Logger.d.ts.map +1 -0
  63. package/dist/esm/Logger.js +61 -0
  64. package/dist/esm/Logger.js.map +1 -0
  65. package/dist/esm/Metric.d.ts +67 -0
  66. package/dist/esm/Metric.d.ts.map +1 -0
  67. package/dist/esm/Metric.js +80 -0
  68. package/dist/esm/Metric.js.map +1 -0
  69. package/dist/esm/NodeOtel.d.ts +42 -0
  70. package/dist/esm/NodeOtel.d.ts.map +1 -0
  71. package/dist/esm/NodeOtel.js +56 -0
  72. package/dist/esm/NodeOtel.js.map +1 -0
  73. package/dist/esm/Otel.d.ts +63 -0
  74. package/dist/esm/Otel.d.ts.map +1 -0
  75. package/dist/esm/Otel.js +52 -0
  76. package/dist/esm/Otel.js.map +1 -0
  77. package/dist/esm/Otlp.d.ts +203 -0
  78. package/dist/esm/Otlp.d.ts.map +1 -0
  79. package/dist/esm/Otlp.js +384 -0
  80. package/dist/esm/Otlp.js.map +1 -0
  81. package/dist/esm/Resource.d.ts +163 -0
  82. package/dist/esm/Resource.d.ts.map +1 -0
  83. package/dist/esm/Resource.js +238 -0
  84. package/dist/esm/Resource.js.map +1 -0
  85. package/dist/esm/index.d.ts +61 -0
  86. package/dist/esm/index.d.ts.map +1 -0
  87. package/dist/esm/index.js +61 -0
  88. package/dist/esm/index.js.map +1 -0
  89. package/dist/esm/internal/schemaIssuePath.d.ts +31 -0
  90. package/dist/esm/internal/schemaIssuePath.d.ts.map +1 -0
  91. package/dist/esm/internal/schemaIssuePath.js +59 -0
  92. package/dist/esm/internal/schemaIssuePath.js.map +1 -0
  93. package/docs/README.md +164 -0
  94. package/docs/api.md +780 -0
  95. package/docs/concepts/instrumentation-and-export.md +98 -0
  96. package/docs/concepts/layer-map.md +73 -0
  97. package/docs/concepts/validated-acquisition.md +106 -0
  98. package/docs/guides/export-to-a-collector.md +190 -0
  99. package/docs/guides/forward-logs-to-the-journal.md +226 -0
  100. package/docs/guides/install-a-logger.md +111 -0
  101. package/docs/guides/read-runtime-metrics.md +83 -0
  102. package/docs/guides/testing.md +134 -0
  103. package/docs/guides/wire-an-opentelemetry-sdk.md +226 -0
  104. package/docs/installation.md +102 -0
  105. package/docs/quickstart.md +145 -0
  106. package/docs/troubleshooting.md +168 -0
  107. package/package.json +221 -32
  108. package/src/BrowserOtel.ts +51 -0
  109. package/src/Endpoint.ts +131 -0
  110. package/src/JournalLogger.ts +635 -0
  111. package/src/Logger.ts +107 -0
  112. package/src/Metric.ts +88 -0
  113. package/src/NodeOtel.ts +90 -0
  114. package/src/Otel.ts +118 -0
  115. package/src/Otlp.ts +514 -0
  116. package/src/Resource.ts +325 -0
  117. package/src/index.ts +67 -0
  118. package/src/internal/schemaIssuePath.ts +65 -0
  119. package/docker-compose.otel.yml +0 -104
  120. package/grafana/dashboards/smithers-dashboard.json +0 -453
  121. package/grafana/provisioning/dashboards/dashboards.yml +0 -12
  122. package/grafana/provisioning/datasources/datasources.yml +0 -49
  123. package/loki/loki-config.yaml +0 -35
  124. package/otel-collector-config.yml +0 -38
  125. package/prometheus/prometheus.yml +0 -8
  126. package/src/MetricName.ts +0 -1
  127. package/src/MetricsServiceLive.js +0 -9
  128. package/src/README.md +0 -28
  129. package/src/ResolvedSmithersObservabilityOptions.ts +0 -12
  130. package/src/SmithersEvent.ts +0 -843
  131. package/src/SmithersLogFormat.ts +0 -1
  132. package/src/SmithersMetricDefinition.ts +0 -15
  133. package/src/SmithersMetricType.ts +0 -1
  134. package/src/SmithersMetricUnit.ts +0 -1
  135. package/src/SmithersObservability.js +0 -15
  136. package/src/SmithersObservabilityOptions.ts +0 -12
  137. package/src/SmithersObservabilityService.ts +0 -13
  138. package/src/_coreCorrelation/CorrelationContext.ts +0 -10
  139. package/src/_coreCorrelation/CorrelationContextLive.js +0 -11
  140. package/src/_coreCorrelation/CorrelationContextService.js +0 -15
  141. package/src/_coreCorrelation/CorrelationContextServiceShape.ts +0 -12
  142. package/src/_coreCorrelation/CorrelationPatch.ts +0 -3
  143. package/src/_coreCorrelation/README.md +0 -20
  144. package/src/_coreCorrelation/_correlationStorage.js +0 -4
  145. package/src/_coreCorrelation/correlationContextFiberRef.js +0 -5
  146. package/src/_coreCorrelation/correlationContextToLogAnnotations.js +0 -18
  147. package/src/_coreCorrelation/getCurrentCorrelationContext.js +0 -9
  148. package/src/_coreCorrelation/getCurrentCorrelationContextEffect.js +0 -11
  149. package/src/_coreCorrelation/index.js +0 -14
  150. package/src/_coreCorrelation/mergeCorrelationContext.js +0 -51
  151. package/src/_coreCorrelation/runWithCorrelationContext.js +0 -14
  152. package/src/_coreCorrelation/updateCurrentCorrelationContext.js +0 -17
  153. package/src/_coreCorrelation/withCorrelationContext.js +0 -38
  154. package/src/_coreCorrelation/withCurrentCorrelationContext.js +0 -11
  155. package/src/_coreMetrics.js +0 -14
  156. package/src/_coreMetricsShape.ts +0 -44
  157. package/src/_corePrometheus.js +0 -91
  158. package/src/_corePrometheusShape.ts +0 -11
  159. package/src/_coreTracing.js +0 -132
  160. package/src/_coreTracingShape.ts +0 -17
  161. package/src/_otelLogBuilders.js +0 -102
  162. package/src/_sessionFileResolvers.js +0 -164
  163. package/src/_smithersSpanAttributeAliases.js +0 -19
  164. package/src/_smithersTraceSpanStorage.js +0 -3
  165. package/src/_traceEventNormalizers.js +0 -499
  166. package/src/_traceRedaction.js +0 -162
  167. package/src/agentSessionEventToOtelLogRecord.js +0 -55
  168. package/src/agentTrace.ts +0 -144
  169. package/src/agentTraceCapabilities.js +0 -151
  170. package/src/annotateSmithersTrace.js +0 -11
  171. package/src/canonicalTraceEventToOtelLogRecord.js +0 -55
  172. package/src/correlation.js +0 -56
  173. package/src/createSmithersObservabilityLayer.js +0 -59
  174. package/src/createSmithersOtelLayer.js +0 -23
  175. package/src/createSmithersRuntimeLayer.js +0 -2
  176. package/src/detectAgentFamily.js +0 -26
  177. package/src/detectCaptureMode.js +0 -29
  178. package/src/emitOtelLogRecord.js +0 -19
  179. package/src/getCurrentSmithersTraceAnnotations.js +0 -14
  180. package/src/getCurrentSmithersTraceSpan.js +0 -7
  181. package/src/index.d.ts +0 -1392
  182. package/src/index.js +0 -137
  183. package/src/kindPhase.js +0 -17
  184. package/src/logging.js +0 -264
  185. package/src/makeSmithersSpanAttributes.js +0 -20
  186. package/src/metrics/README.md +0 -22
  187. package/src/metrics/SmithersMetricDefinition.ts +0 -17
  188. package/src/metrics/SmithersMetricType.ts +0 -1
  189. package/src/metrics/SmithersMetricUnit.ts +0 -1
  190. package/src/metrics/_asyncExternalWaitCounts.js +0 -4
  191. package/src/metrics/_buckets.js +0 -37
  192. package/src/metrics/_incrementGauge.js +0 -11
  193. package/src/metrics/_processStartMs.js +0 -1
  194. package/src/metrics/activeNodes.js +0 -2
  195. package/src/metrics/activeRuns.js +0 -2
  196. package/src/metrics/agentActionsTotal.js +0 -2
  197. package/src/metrics/agentDurationMs.js +0 -3
  198. package/src/metrics/agentErrorsTotal.js +0 -2
  199. package/src/metrics/agentEventsTotal.js +0 -2
  200. package/src/metrics/agentInvocationsTotal.js +0 -2
  201. package/src/metrics/agentRetriesTotal.js +0 -2
  202. package/src/metrics/agentSessionsTotal.js +0 -2
  203. package/src/metrics/agentTokensTotal.js +0 -2
  204. package/src/metrics/alertDeliveriesAttempted.js +0 -2
  205. package/src/metrics/alertDeliveriesSuppressed.js +0 -2
  206. package/src/metrics/alertsAcknowledgedTotal.js +0 -2
  207. package/src/metrics/alertsActive.js +0 -2
  208. package/src/metrics/alertsEscalatedTotal.js +0 -2
  209. package/src/metrics/alertsFiredTotal.js +0 -2
  210. package/src/metrics/alertsReopenedTotal.js +0 -2
  211. package/src/metrics/alertsResolvedTotal.js +0 -2
  212. package/src/metrics/alertsSilencedTotal.js +0 -2
  213. package/src/metrics/approvalPending.js +0 -2
  214. package/src/metrics/approvalWaitDuration.js +0 -5
  215. package/src/metrics/approvalsDenied.js +0 -2
  216. package/src/metrics/approvalsGranted.js +0 -2
  217. package/src/metrics/approvalsRequested.js +0 -2
  218. package/src/metrics/attemptDuration.js +0 -3
  219. package/src/metrics/attentionBacklog.js +0 -2
  220. package/src/metrics/cacheHits.js +0 -2
  221. package/src/metrics/cacheMisses.js +0 -2
  222. package/src/metrics/dbQueryDuration.js +0 -3
  223. package/src/metrics/dbRetries.js +0 -2
  224. package/src/metrics/dbTransactionDuration.js +0 -3
  225. package/src/metrics/dbTransactionRetries.js +0 -2
  226. package/src/metrics/dbTransactionRollbacks.js +0 -2
  227. package/src/metrics/devtoolsActiveSubscribers.js +0 -2
  228. package/src/metrics/devtoolsBackpressureDisconnectTotal.js +0 -2
  229. package/src/metrics/devtoolsDeltaBuildMs.js +0 -3
  230. package/src/metrics/devtoolsEventBytes.js +0 -3
  231. package/src/metrics/devtoolsEventTotal.js +0 -2
  232. package/src/metrics/devtoolsSnapshotBuildMs.js +0 -5
  233. package/src/metrics/devtoolsSubscribeTotal.js +0 -2
  234. package/src/metrics/errorsTotal.js +0 -2
  235. package/src/metrics/eventsEmittedTotal.js +0 -2
  236. package/src/metrics/externalWaitAsyncPending.js +0 -2
  237. package/src/metrics/gatewayApprovalDecisionsTotal.js +0 -2
  238. package/src/metrics/gatewayAuthEventsTotal.js +0 -2
  239. package/src/metrics/gatewayConnectionsActive.js +0 -2
  240. package/src/metrics/gatewayConnectionsClosedTotal.js +0 -2
  241. package/src/metrics/gatewayConnectionsTotal.js +0 -2
  242. package/src/metrics/gatewayCronTriggersTotal.js +0 -2
  243. package/src/metrics/gatewayErrorsTotal.js +0 -2
  244. package/src/metrics/gatewayHeartbeatTicksTotal.js +0 -2
  245. package/src/metrics/gatewayMessagesReceivedTotal.js +0 -2
  246. package/src/metrics/gatewayMessagesSentTotal.js +0 -2
  247. package/src/metrics/gatewayRpcCallsTotal.js +0 -2
  248. package/src/metrics/gatewayRpcDuration.js +0 -3
  249. package/src/metrics/gatewayRunEventBackpressureDisconnectTotal.js +0 -4
  250. package/src/metrics/gatewayRunsCompletedTotal.js +0 -2
  251. package/src/metrics/gatewayRunsStartedTotal.js +0 -2
  252. package/src/metrics/gatewaySignalsTotal.js +0 -2
  253. package/src/metrics/gatewayWebhooksReceivedTotal.js +0 -2
  254. package/src/metrics/gatewayWebhooksRejectedTotal.js +0 -2
  255. package/src/metrics/gatewayWebhooksVerifiedTotal.js +0 -2
  256. package/src/metrics/heartbeatDataSizeBytes.js +0 -5
  257. package/src/metrics/heartbeatIntervalMs.js +0 -3
  258. package/src/metrics/hotReloadDuration.js +0 -3
  259. package/src/metrics/hotReloadFailures.js +0 -2
  260. package/src/metrics/hotReloads.js +0 -2
  261. package/src/metrics/httpRequestDuration.js +0 -3
  262. package/src/metrics/httpRequests.js +0 -2
  263. package/src/metrics/index.d.ts +0 -1222
  264. package/src/metrics/index.js +0 -168
  265. package/src/metrics/memoryFactReads.js +0 -3
  266. package/src/metrics/memoryFactWrites.js +0 -3
  267. package/src/metrics/memoryMessageSaves.js +0 -3
  268. package/src/metrics/memoryRecallDuration.js +0 -11
  269. package/src/metrics/memoryRecallQueries.js +0 -3
  270. package/src/metrics/metricsServiceAdapter.js +0 -181
  271. package/src/metrics/nodeDuration.js +0 -3
  272. package/src/metrics/nodeRetriesTotal.js +0 -2
  273. package/src/metrics/nodesFailed.js +0 -2
  274. package/src/metrics/nodesFinished.js +0 -2
  275. package/src/metrics/nodesStarted.js +0 -2
  276. package/src/metrics/openApiToolCallErrorsTotal.js +0 -3
  277. package/src/metrics/openApiToolCallsTotal.js +0 -3
  278. package/src/metrics/openApiToolDuration.js +0 -9
  279. package/src/metrics/processHeapUsedBytes.js +0 -2
  280. package/src/metrics/processMemoryRssBytes.js +0 -2
  281. package/src/metrics/processUptimeSeconds.js +0 -2
  282. package/src/metrics/promptSizeBytes.js +0 -3
  283. package/src/metrics/replaysStarted.js +0 -3
  284. package/src/metrics/responseSizeBytes.js +0 -3
  285. package/src/metrics/rewindDurationMs.js +0 -3
  286. package/src/metrics/rewindFramesDeleted.js +0 -3
  287. package/src/metrics/rewindRollbackTotal.js +0 -2
  288. package/src/metrics/rewindSandboxesReverted.js +0 -3
  289. package/src/metrics/rewindTotal.js +0 -2
  290. package/src/metrics/runDuration.js +0 -3
  291. package/src/metrics/runForksCreated.js +0 -3
  292. package/src/metrics/runsAncestryDepth.js +0 -3
  293. package/src/metrics/runsCancelledTotal.js +0 -2
  294. package/src/metrics/runsCarriedStateBytes.js +0 -5
  295. package/src/metrics/runsContinuedTotal.js +0 -2
  296. package/src/metrics/runsFailedTotal.js +0 -2
  297. package/src/metrics/runsFinishedTotal.js +0 -2
  298. package/src/metrics/runsResumedTotal.js +0 -2
  299. package/src/metrics/runsTotal.js +0 -2
  300. package/src/metrics/sandboxActive.js +0 -2
  301. package/src/metrics/sandboxBundleSizeBytes.js +0 -5
  302. package/src/metrics/sandboxCompletedTotal.js +0 -2
  303. package/src/metrics/sandboxCreatedTotal.js +0 -2
  304. package/src/metrics/sandboxDurationMs.js +0 -3
  305. package/src/metrics/sandboxPatchCount.js +0 -3
  306. package/src/metrics/sandboxTransportDurationMs.js +0 -5
  307. package/src/metrics/schedulerConcurrencyUtilization.js +0 -2
  308. package/src/metrics/schedulerQueueDepth.js +0 -2
  309. package/src/metrics/schedulerWaitDuration.js +0 -5
  310. package/src/metrics/scorerDuration.js +0 -9
  311. package/src/metrics/scorerEventsFailed.js +0 -2
  312. package/src/metrics/scorerEventsFinished.js +0 -2
  313. package/src/metrics/scorerEventsStarted.js +0 -2
  314. package/src/metrics/scorersFailed.js +0 -3
  315. package/src/metrics/scorersFinished.js +0 -3
  316. package/src/metrics/scorersStarted.js +0 -3
  317. package/src/metrics/smithersMetricCatalog.js +0 -893
  318. package/src/metrics/smithersMetricCatalogByKey.js +0 -2
  319. package/src/metrics/smithersMetricCatalogByName.js +0 -2
  320. package/src/metrics/smithersMetricCatalogByPrometheusName.js +0 -4
  321. package/src/metrics/snapshotDuration.js +0 -9
  322. package/src/metrics/snapshotsCaptured.js +0 -3
  323. package/src/metrics/supervisorPollDuration.js +0 -5
  324. package/src/metrics/supervisorPollsTotal.js +0 -2
  325. package/src/metrics/supervisorResumeLag.js +0 -5
  326. package/src/metrics/supervisorResumedTotal.js +0 -2
  327. package/src/metrics/supervisorSkippedTotal.js +0 -2
  328. package/src/metrics/supervisorStaleDetected.js +0 -2
  329. package/src/metrics/taskHeartbeatTimeoutTotal.js +0 -2
  330. package/src/metrics/taskHeartbeatsTotal.js +0 -2
  331. package/src/metrics/timerDelayDuration.js +0 -3
  332. package/src/metrics/timersCancelled.js +0 -2
  333. package/src/metrics/timersCreated.js +0 -2
  334. package/src/metrics/timersFired.js +0 -2
  335. package/src/metrics/timersPending.js +0 -2
  336. package/src/metrics/toPrometheusMetricName.js +0 -8
  337. package/src/metrics/tokensCacheReadTotal.js +0 -2
  338. package/src/metrics/tokensCacheWriteTotal.js +0 -2
  339. package/src/metrics/tokensContextWindowBucketTotal.js +0 -2
  340. package/src/metrics/tokensContextWindowPerCall.js +0 -5
  341. package/src/metrics/tokensInputPerCall.js +0 -3
  342. package/src/metrics/tokensInputTotal.js +0 -2
  343. package/src/metrics/tokensOutputPerCall.js +0 -3
  344. package/src/metrics/tokensOutputTotal.js +0 -2
  345. package/src/metrics/tokensReasoningTotal.js +0 -2
  346. package/src/metrics/toolCallErrorsTotal.js +0 -2
  347. package/src/metrics/toolCallsTotal.js +0 -2
  348. package/src/metrics/toolDuration.js +0 -3
  349. package/src/metrics/toolOutputTruncatedTotal.js +0 -2
  350. package/src/metrics/trackEvent.js +0 -608
  351. package/src/metrics/updateAsyncExternalWaitPending.js +0 -18
  352. package/src/metrics/updateProcessMetrics.js +0 -20
  353. package/src/metrics/vcsDuration.js +0 -3
  354. package/src/normalizeStructuredEvent.js +0 -15
  355. package/src/prometheusContentType.js +0 -1
  356. package/src/renderPrometheusMetrics.js +0 -212
  357. package/src/resolveAgentTraceCapabilities.js +0 -59
  358. package/src/resolveSmithersObservabilityOptions.js +0 -109
  359. package/src/smithersMetrics.js +0 -2
  360. package/src/smithersSpanNames.js +0 -6
  361. package/src/unsupportedKindsForCapabilities.js +0 -32
  362. package/src/withSmithersSpan.js +0 -17
  363. package/tempo/tempo.yml +0 -17
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrowserOtel.d.ts","sourceRoot":"","sources":["../../src/BrowserOtel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAElE,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,EAAE,aAAa,IAAI,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAE3E;;;;;;;;;GASG;AACH,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAA;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC,GAAG,SAAS,CAAA;IACzF,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAC,kBAAkB,CAAC,CAAC,GAAG,SAAS,CAAA;IACxG,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC,GAAG,SAAS,CAAA;IACtF,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CACvD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,GAAI,SAAS,OAAO,KAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,4BAA4B,CAUlG,CAAA"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Browser OpenTelemetry setup with explicitly injected providers/readers.
3
+ *
4
+ * @since 0.1.0
5
+ */
6
+ import * as WebSdk from "@effect/opentelemetry/WebSdk";
7
+ import * as Effect from "effect/Effect";
8
+ import * as Layer from "effect/Layer";
9
+ import * as Resource from "./Resource.js";
10
+ /**
11
+ * Builds a scoped browser OpenTelemetry layer. The web SDK owns every
12
+ * processor and reader the factories return and shuts them down on release.
13
+ *
14
+ * @category layers
15
+ * @since 0.1.0
16
+ */
17
+ export const layerOtel = (options) => Layer.unwrap(Effect.map(Resource.decode(options.resource), (decoded) => WebSdk.layer(() => ({
18
+ resource: Resource.toOpenTelemetryConfiguration(decoded),
19
+ spanProcessor: options.spanProcessor?.(),
20
+ logRecordProcessor: options.logRecordProcessor?.(),
21
+ metricReader: options.metricReader?.(),
22
+ loggerMergeWithExisting: options.loggerMergeWithExisting
23
+ }))));
24
+ //# sourceMappingURL=BrowserOtel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrowserOtel.js","sourceRoot":"","sources":["../../src/BrowserOtel.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,MAAM,8BAA8B,CAAA;AAItD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAqBzC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,OAAgB,EAA6D,EAAE,CACvG,KAAK,CAAC,MAAM,CACV,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,CACxD,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;IAClB,QAAQ,EAAE,QAAQ,CAAC,4BAA4B,CAAC,OAAO,CAAC;IACxD,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,EAAE;IACxC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB,EAAE,EAAE;IAClD,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE;IACtC,uBAAuB,EAAE,OAAO,CAAC,uBAAuB;CACzD,CAAC,CAAC,CAAC,CACP,CAAA"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Validated collector endpoints for the OTLP exporters.
3
+ *
4
+ * The endpoint is the field an operator most often gets wrong, and a wrong one
5
+ * is invisible: Effect's exporter absorbs export failure by design, so a layer
6
+ * built against `""` or `"localhost:4318"` looks identical to a working one and
7
+ * simply never delivers. Every builder therefore decodes its endpoint during
8
+ * layer acquisition, the same posture `Resource` already takes.
9
+ *
10
+ * @since 1.0.0-rc.0
11
+ */
12
+ import * as Effect from "effect/Effect";
13
+ import * as Schema from "effect/Schema";
14
+ /**
15
+ * Largest collector endpoint accepted by a builder.
16
+ *
17
+ * @category constants
18
+ * @since 1.0.0-rc.0
19
+ */
20
+ export declare const maximumEndpointLength = 2048;
21
+ /**
22
+ * Runtime schema for an absolute `http:` or `https:` collector endpoint that
23
+ * carries no credentials, query, fragment, backslashes, spaces, or controls.
24
+ * A base path is allowed; authentication belongs in exporter headers.
25
+ *
26
+ * @category schemas
27
+ * @since 1.0.0-rc.0
28
+ */
29
+ export declare const Endpoint: Schema.String;
30
+ declare const InvalidExporterEndpoint_base: Schema.Class<InvalidExporterEndpoint, Schema.TaggedStruct<"@smthrs/observability/InvalidExporterEndpoint", {
31
+ readonly code: Schema.Literal<"invalid_exporter_endpoint">;
32
+ readonly path: Schema.String;
33
+ readonly message: Schema.String;
34
+ }>, import("effect/Cause").YieldableError>;
35
+ /**
36
+ * Stable exporter-endpoint refusal shared by every OTLP builder.
37
+ *
38
+ * @category errors
39
+ * @since 1.0.0-rc.0
40
+ */
41
+ export declare class InvalidExporterEndpoint extends InvalidExporterEndpoint_base {
42
+ }
43
+ /**
44
+ * Removes the repeated trailing separators that would otherwise produce a
45
+ * double slash in a signal URL.
46
+ *
47
+ * @category conversions
48
+ * @since 1.0.0-rc.0
49
+ */
50
+ export declare const normalize: (endpoint: string) => string;
51
+ /**
52
+ * Decodes one collector endpoint into its normalized form without retaining
53
+ * the rejected value.
54
+ *
55
+ * `path` names the option the endpoint arrived on, so the refusal points at the
56
+ * caller's own field rather than at a shared internal name.
57
+ *
58
+ * @category decoding
59
+ * @since 1.0.0-rc.0
60
+ */
61
+ export declare const decode: (endpoint: unknown, path: string) => Effect.Effect<string, InvalidExporterEndpoint>;
62
+ /**
63
+ * Builds the OTLP/HTTP URL one signal is posted to below a decoded endpoint.
64
+ *
65
+ * @category conversions
66
+ * @since 1.0.0-rc.0
67
+ */
68
+ export declare const signalUrl: (endpoint: string, signal: "traces" | "metrics" | "logs") => string;
69
+ export {};
70
+ //# sourceMappingURL=Endpoint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Endpoint.d.ts","sourceRoot":"","sources":["../../src/Endpoint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,OAAQ,CAAA;AAuC1C;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,eAGpB,CAAA;;;;;;AAED;;;;;GAKG;AACH,qBAAa,uBAAwB,SAAQ,4BAO5C;CAAG;AAEJ;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,GAAI,UAAU,MAAM,KAAG,MAAsC,CAAA;AAEnF;;;;;;;;;GASG;AACH,eAAO,MAAM,MAAM,GACjB,UAAU,OAAO,EACjB,MAAM,MAAM,KACX,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAW7C,CAAA;AAEH;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,UAAU,MAAM,EAAE,QAAQ,QAAQ,GAAG,SAAS,GAAG,MAAM,KAAG,MAC7C,CAAA"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Validated collector endpoints for the OTLP exporters.
3
+ *
4
+ * The endpoint is the field an operator most often gets wrong, and a wrong one
5
+ * is invisible: Effect's exporter absorbs export failure by design, so a layer
6
+ * built against `""` or `"localhost:4318"` looks identical to a working one and
7
+ * simply never delivers. Every builder therefore decodes its endpoint during
8
+ * layer acquisition, the same posture `Resource` already takes.
9
+ *
10
+ * @since 1.0.0-rc.0
11
+ */
12
+ import * as Effect from "effect/Effect";
13
+ import * as Schema from "effect/Schema";
14
+ /**
15
+ * Largest collector endpoint accepted by a builder.
16
+ *
17
+ * @category constants
18
+ * @since 1.0.0-rc.0
19
+ */
20
+ export const maximumEndpointLength = 2_048;
21
+ /** The largest code unit the WHATWG URL parser repairs away: the space. */
22
+ const largestRepairedCodeUnit = 0x20;
23
+ /**
24
+ * Reports whether the URL parser would repair the value rather than parse it
25
+ * as written. It strips leading and trailing C0 controls and spaces and
26
+ * removes tab, newline, and carriage return from anywhere in its input, and
27
+ * every one of those sits at or below {@link largestRepairedCodeUnit}.
28
+ */
29
+ const repairedByUrlParser = (value) => {
30
+ for (let index = 0; index < value.length; index++) {
31
+ if (value.charCodeAt(index) <= largestRepairedCodeUnit)
32
+ return true;
33
+ }
34
+ return false;
35
+ };
36
+ const isAbsoluteHttpUrl = (value) => {
37
+ // `new URL` alone is not a validator here. It strips padding and inline
38
+ // control characters before parsing, so it reports a copy-pasted
39
+ // `"http://collector:4318\n"` as well formed while the untrimmed original is
40
+ // what a builder would hand its exporter: either an unusable URL or a
41
+ // request to a host nobody typed. No legal collector endpoint carries one of
42
+ // these, so refusing them costs nothing and closes the silent case.
43
+ if (repairedByUrlParser(value))
44
+ return false;
45
+ // Exporters append /v1/<signal> to this base. A query or fragment would
46
+ // swallow that suffix instead of changing the request path. Also refuse
47
+ // missing authority separators and backslashes that WHATWG silently repairs.
48
+ if (!/^https?:\/\/[^/]/i.test(value) || /[?#\\]/.test(value))
49
+ return false;
50
+ let url;
51
+ try {
52
+ url = new URL(value);
53
+ }
54
+ catch {
55
+ return false;
56
+ }
57
+ return url.username === "" && url.password === "";
58
+ };
59
+ /**
60
+ * Runtime schema for an absolute `http:` or `https:` collector endpoint that
61
+ * carries no credentials, query, fragment, backslashes, spaces, or controls.
62
+ * A base path is allowed; authentication belongs in exporter headers.
63
+ *
64
+ * @category schemas
65
+ * @since 1.0.0-rc.0
66
+ */
67
+ export const Endpoint = Schema.String.check(Schema.isMaxLength(maximumEndpointLength), Schema.makeFilter((value) => isAbsoluteHttpUrl(value), { title: "absoluteCollectorEndpoint" }));
68
+ /**
69
+ * Stable exporter-endpoint refusal shared by every OTLP builder.
70
+ *
71
+ * @category errors
72
+ * @since 1.0.0-rc.0
73
+ */
74
+ export class InvalidExporterEndpoint extends Schema.TaggedError()("@smthrs/observability/InvalidExporterEndpoint", {
75
+ code: Schema.Literal("invalid_exporter_endpoint"),
76
+ path: Schema.String,
77
+ message: Schema.String
78
+ }) {
79
+ }
80
+ /**
81
+ * Removes the repeated trailing separators that would otherwise produce a
82
+ * double slash in a signal URL.
83
+ *
84
+ * @category conversions
85
+ * @since 1.0.0-rc.0
86
+ */
87
+ export const normalize = (endpoint) => endpoint.replace(/\/+$/, "");
88
+ /**
89
+ * Decodes one collector endpoint into its normalized form without retaining
90
+ * the rejected value.
91
+ *
92
+ * `path` names the option the endpoint arrived on, so the refusal points at the
93
+ * caller's own field rather than at a shared internal name.
94
+ *
95
+ * @category decoding
96
+ * @since 1.0.0-rc.0
97
+ */
98
+ export const decode = (endpoint, path) => Schema.decodeUnknownEffect(Endpoint)(endpoint).pipe(Effect.map(normalize), Effect.mapError(() => new InvalidExporterEndpoint({
99
+ code: "invalid_exporter_endpoint",
100
+ path,
101
+ message: `OTLP collector ${path} must be an absolute http:// or https:// base URL without credentials, query, fragment, backslashes, spaces, or control characters`
102
+ })));
103
+ /**
104
+ * Builds the OTLP/HTTP URL one signal is posted to below a decoded endpoint.
105
+ *
106
+ * @category conversions
107
+ * @since 1.0.0-rc.0
108
+ */
109
+ export const signalUrl = (endpoint, signal) => `${normalize(endpoint)}/v1/${signal}`;
110
+ //# sourceMappingURL=Endpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Endpoint.js","sourceRoot":"","sources":["../../src/Endpoint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAA;AAE1C,2EAA2E;AAC3E,MAAM,uBAAuB,GAAG,IAAI,CAAA;AAEpC;;;;;GAKG;AACH,MAAM,mBAAmB,GAAG,CAAC,KAAa,EAAW,EAAE;IACrD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAClD,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,uBAAuB;YAAE,OAAO,IAAI,CAAA;IACrE,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAW,EAAE;IACnD,wEAAwE;IACxE,iEAAiE;IACjE,6EAA6E;IAC7E,sEAAsE;IACtE,6EAA6E;IAC7E,oEAAoE;IACpE,IAAI,mBAAmB,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAC5C,wEAAwE;IACxE,wEAAwE;IACxE,6EAA6E;IAC7E,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAC1E,IAAI,GAAQ,CAAA;IACZ,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;IACtB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,GAAG,CAAC,QAAQ,KAAK,EAAE,IAAI,GAAG,CAAC,QAAQ,KAAK,EAAE,CAAA;AACnD,CAAC,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CACzC,MAAM,CAAC,WAAW,CAAC,qBAAqB,CAAC,EACzC,MAAM,CAAC,UAAU,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,2BAA2B,EAAE,CAAC,CACvG,CAAA;AAED;;;;;GAKG;AACH,MAAM,OAAO,uBAAwB,SAAQ,MAAM,CAAC,WAAW,EAA2B,CACxF,+CAA+C,EAC/C;IACE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,2BAA2B,CAAC;IACjD,IAAI,EAAE,MAAM,CAAC,MAAM;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM;CACvB,CACF;CAAG;AAEJ;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAU,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;AAEnF;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CACpB,QAAiB,EACjB,IAAY,EACoC,EAAE,CAClD,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CACjD,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EACrB,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CACnB,IAAI,uBAAuB,CAAC;IAC1B,IAAI,EAAE,2BAA2B;IACjC,IAAI;IACJ,OAAO,EACL,kBAAkB,IAAI,oIAAoI;CAC7J,CAAC,CACH,CACF,CAAA;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAE,MAAqC,EAAU,EAAE,CAC3F,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,MAAM,EAAE,CAAA"}
@@ -0,0 +1,232 @@
1
+ /**
2
+ * Non-blocking forwarding of bounded operational logs to the durable journal.
3
+ *
4
+ * @since 0.1.0
5
+ */
6
+ import * as Journal from "@smthrs/journal/Journal";
7
+ import * as JournalEvent from "@smthrs/journal/JournalEvent";
8
+ import * as Cause from "effect/Cause";
9
+ import * as Layer from "effect/Layer";
10
+ import type * as LogLevel from "effect/LogLevel";
11
+ import * as Schema from "effect/Schema";
12
+ /**
13
+ * Largest queue accepted by the forwarding logger.
14
+ *
15
+ * @category constants
16
+ * @since 1.0.0-rc.0
17
+ */
18
+ export declare const maximumCapacity = 65536;
19
+ /**
20
+ * Largest detached log payload admitted to the asynchronous queue.
21
+ *
22
+ * @category constants
23
+ * @since 1.0.0-rc.0
24
+ */
25
+ export declare const maximumSnapshotBytes: number;
26
+ /**
27
+ * Largest number of container members copied into one detached log payload.
28
+ *
29
+ * @category constants
30
+ * @since 1.0.0-rc.0
31
+ */
32
+ export declare const maximumSnapshotMembers = 4096;
33
+ /**
34
+ * Deepest container path copied into one detached log payload.
35
+ *
36
+ * @category constants
37
+ * @since 1.0.0-rc.0
38
+ */
39
+ export declare const maximumSnapshotDepth = 64;
40
+ /**
41
+ * What a hostile or unreadable logged value becomes.
42
+ *
43
+ * @category constants
44
+ * @since 1.0.0-rc.0
45
+ */
46
+ export declare const unrenderableMarker = "[Unrenderable]";
47
+ /**
48
+ * What a value beyond a logger resource ceiling becomes.
49
+ *
50
+ * @category constants
51
+ * @since 1.0.0-rc.0
52
+ */
53
+ export declare const truncatedMarker = "[Truncated]";
54
+ /**
55
+ * Options for the journal forwarding logger.
56
+ *
57
+ * @category models
58
+ * @since 1.0.0-rc.0
59
+ */
60
+ export interface Options {
61
+ /** The run every forwarded record is attributed to. */
62
+ readonly runId: JournalEvent.RunId;
63
+ /** Queue depth, 1 through {@link maximumCapacity}. Defaults to 256. */
64
+ readonly capacity?: number | undefined;
65
+ /**
66
+ * Pins `References.MinimumLogLevel` for the whole application. Omitted, the
67
+ * layer leaves that reference alone and Effect's own `Info` default applies.
68
+ */
69
+ readonly minimumLogLevel?: LogLevel.LogLevel | undefined;
70
+ /**
71
+ * Keeps the ambient loggers alongside the forwarder. Defaults to `false`,
72
+ * which replaces the ambient logger set.
73
+ */
74
+ readonly mergeWithExisting?: boolean | undefined;
75
+ }
76
+ declare const InvalidJournalLoggerOptions_base: Schema.Class<InvalidJournalLoggerOptions, Schema.TaggedStruct<"@smthrs/observability/InvalidJournalLoggerOptions", {
77
+ readonly code: Schema.Literal<"invalid_journal_logger_options">;
78
+ readonly path: Schema.String;
79
+ readonly message: Schema.String;
80
+ }>, Cause.YieldableError>;
81
+ /**
82
+ * A stable logger configuration refusal.
83
+ *
84
+ * @category errors
85
+ * @since 1.0.0-rc.0
86
+ */
87
+ export declare class InvalidJournalLoggerOptions extends InvalidJournalLoggerOptions_base {
88
+ }
89
+ /**
90
+ * One typed failure retained from an Effect cause.
91
+ *
92
+ * @category schemas
93
+ * @since 1.0.0-rc.0
94
+ */
95
+ export declare const TelemetryFail: Schema.Struct<{
96
+ readonly _tag: Schema.Literal<"Fail">;
97
+ readonly error: Schema.Unknown;
98
+ }>;
99
+ /**
100
+ * One unexpected defect retained from an Effect cause.
101
+ *
102
+ * @category schemas
103
+ * @since 1.0.0-rc.0
104
+ */
105
+ export declare const TelemetryDie: Schema.Struct<{
106
+ readonly _tag: Schema.Literal<"Die">;
107
+ readonly defect: Schema.Unknown;
108
+ }>;
109
+ /**
110
+ * One interruption retained from an Effect cause.
111
+ *
112
+ * @category schemas
113
+ * @since 1.0.0-rc.0
114
+ */
115
+ export declare const TelemetryInterrupt: Schema.Struct<{
116
+ readonly _tag: Schema.Literal<"Interrupt">;
117
+ readonly fiberId: Schema.NullOr<Schema.Int>;
118
+ }>;
119
+ /**
120
+ * One reason in a persisted telemetry cause.
121
+ *
122
+ * @category schemas
123
+ * @since 1.0.0-rc.0
124
+ */
125
+ export declare const TelemetryCauseReason: Schema.Union<readonly [Schema.Struct<{
126
+ readonly _tag: Schema.Literal<"Fail">;
127
+ readonly error: Schema.Unknown;
128
+ }>, Schema.Struct<{
129
+ readonly _tag: Schema.Literal<"Die">;
130
+ readonly defect: Schema.Unknown;
131
+ }>, Schema.Struct<{
132
+ readonly _tag: Schema.Literal<"Interrupt">;
133
+ readonly fiberId: Schema.NullOr<Schema.Int>;
134
+ }>]>;
135
+ /**
136
+ * One reason in a persisted telemetry cause.
137
+ *
138
+ * @category models
139
+ * @since 1.0.0-rc.0
140
+ */
141
+ export type TelemetryCauseReason = typeof TelemetryCauseReason.Type;
142
+ /**
143
+ * A versioned structural Effect cause.
144
+ *
145
+ * Effect 4 stores composed failures as an ordered reason list. The projection
146
+ * preserves that order and each fail, defect, or interrupt discriminator.
147
+ *
148
+ * @category schemas
149
+ * @since 1.0.0-rc.0
150
+ */
151
+ export declare const TelemetryCause: Schema.Struct<{
152
+ readonly version: Schema.Literal<1>;
153
+ readonly reasons: Schema.$Array<Schema.Union<readonly [Schema.Struct<{
154
+ readonly _tag: Schema.Literal<"Fail">;
155
+ readonly error: Schema.Unknown;
156
+ }>, Schema.Struct<{
157
+ readonly _tag: Schema.Literal<"Die">;
158
+ readonly defect: Schema.Unknown;
159
+ }>, Schema.Struct<{
160
+ readonly _tag: Schema.Literal<"Interrupt">;
161
+ readonly fiberId: Schema.NullOr<Schema.Int>;
162
+ }>]>>;
163
+ }>;
164
+ /**
165
+ * A versioned structural Effect cause.
166
+ *
167
+ * @category models
168
+ * @since 1.0.0-rc.0
169
+ */
170
+ export type TelemetryCause = typeof TelemetryCause.Type;
171
+ /**
172
+ * Runtime schema for the operational log payload written to the journal.
173
+ *
174
+ * @category schemas
175
+ * @since 1.0.0-rc.0
176
+ */
177
+ export declare const TelemetryLog: Schema.Struct<{
178
+ readonly version: Schema.Literal<1>;
179
+ readonly level: Schema.Literals<readonly ["All", "Fatal", "Error", "Warn", "Info", "Debug", "Trace", "None"]>;
180
+ readonly message: Schema.Unknown;
181
+ readonly annotations: Schema.$Record<Schema.String, Schema.Unknown>;
182
+ readonly cause: Schema.Struct<{
183
+ readonly version: Schema.Literal<1>;
184
+ readonly reasons: Schema.$Array<Schema.Union<readonly [Schema.Struct<{
185
+ readonly _tag: Schema.Literal<"Fail">;
186
+ readonly error: Schema.Unknown;
187
+ }>, Schema.Struct<{
188
+ readonly _tag: Schema.Literal<"Die">;
189
+ readonly defect: Schema.Unknown;
190
+ }>, Schema.Struct<{
191
+ readonly _tag: Schema.Literal<"Interrupt">;
192
+ readonly fiberId: Schema.NullOr<Schema.Int>;
193
+ }>]>>;
194
+ }>;
195
+ readonly fiberId: Schema.Int;
196
+ readonly traceId: Schema.optionalKey<Schema.String>;
197
+ readonly spanId: Schema.optionalKey<Schema.String>;
198
+ readonly timestamp: Schema.String;
199
+ }>;
200
+ /**
201
+ * Versioned operational log payload written to the journal.
202
+ *
203
+ * @category models
204
+ * @since 1.0.0-rc.0
205
+ */
206
+ export type TelemetryLog = typeof TelemetryLog.Type;
207
+ /**
208
+ * Installs a bounded, drop-on-overflow logger forwarder for one explicit run.
209
+ *
210
+ * Configuration is decoded before a worker starts. The callback reads the
211
+ * queue's remaining room first, snapshots and redacts a bounded DTO
212
+ * synchronously only when a slot is free, then performs only non-blocking
213
+ * queue admission. A record a saturated queue cannot take is counted and
214
+ * discarded without being snapshotted. Queue overflow, journal `Dropped` receipts, delivery failures,
215
+ * and journal defects each advance `Metric.droppedLogRecords`. The two failure
216
+ * paths also warn through the ambient loggers with a fixed code and run id,
217
+ * and the worker keeps draining. `Accepted` and `Duplicate` do not advance the
218
+ * counter. Admission receipts cannot identify later drop-oldest evictions of
219
+ * these records or report asynchronous persistence failures or shutdown losses.
220
+ * Closing the scope interrupts the worker and may drop records still queued
221
+ * behind an in-flight write without advancing the counter.
222
+ *
223
+ * The layer replaces the ambient logger set unless `mergeWithExisting` is
224
+ * `true`, and provides `MinimumLogLevel` only when `minimumLogLevel` is given,
225
+ * so an application that set that reference elsewhere keeps it.
226
+ *
227
+ * @category layers
228
+ * @since 1.0.0-rc.0
229
+ */
230
+ export declare const layerJournalForwarding: (options: Options) => Layer.Layer<never, InvalidJournalLoggerOptions, Journal.Journal>;
231
+ export {};
232
+ //# sourceMappingURL=JournalLogger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JournalLogger.d.ts","sourceRoot":"","sources":["../../src/JournalLogger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,OAAO,MAAM,yBAAyB,CAAA;AAClD,OAAO,KAAK,YAAY,MAAM,8BAA8B,CAAA;AAE5D,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAKhD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAKvC;;;;;GAKG;AACH,eAAO,MAAM,eAAe,QAAS,CAAA;AAErC;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,QAAc,CAAA;AAE/C;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,OAAQ,CAAA;AAE3C;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAA;AAEtC;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,mBAAmB,CAAA;AAElD;;;;;GAKG;AACH,eAAO,MAAM,eAAe,gBAAgB,CAAA;AAE5C;;;;;GAKG;AACH,MAAM,WAAW,OAAO;IACtB,uDAAuD;IACvD,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAA;IAClC,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;IACxD;;;OAGG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CACjD;;;;;;AAED;;;;;GAKG;AACH,qBAAa,2BAA4B,SAAQ,gCAOhD;CAAG;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,aAAa;;;EAGxB,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY;;;EAGvB,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB;;;EAG7B,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;IAAkE,CAAA;AAEnG;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAC,IAAI,CAAA;AAEnE;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;EAGzB,CAAA;AAEF;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,IAAI,CAAA;AAEvD;;;;;GAKG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;EAUvB,CAAA;AAEF;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,IAAI,CAAA;AA8UnD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,sBAAsB,GACjC,SAAS,OAAO,KACf,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,2BAA2B,EAAE,OAAO,CAAC,OAAO,CAsE/D,CAAA"}