@btravstack/observability 0.7.0 → 0.9.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.
package/README.md CHANGED
@@ -51,17 +51,15 @@ import {
51
51
  import { Module, Provider } from "@btravstack/di";
52
52
 
53
53
  // The application depends on the port, like any other service.
54
- const placeOrder = Provider(PlaceOrder)(
55
- { orders: OrderRepository, logger: Logger },
56
- {
57
- sync: ({ orders, logger }) => ({
58
- execute: (id, quantity) =>
59
- orders
60
- .save({ id, quantity })
61
- .tap(() => logger.info("order placed", { id, quantity })),
62
- }),
63
- },
64
- );
54
+ const placeOrder = Provider(PlaceOrder)({
55
+ inject: { orders: OrderRepository, logger: Logger },
56
+ sync: ({ orders, logger }) => ({
57
+ execute: (id, quantity) =>
58
+ orders
59
+ .save({ id, quantity })
60
+ .tap(() => logger.info("order placed", { id, quantity })),
61
+ }),
62
+ });
65
63
 
66
64
  // The starter provides it. `LOG_LEVEL` is read inside the graph and validated
67
65
  // once — `verbose` is a startup failure naming the variable, not a silent
package/dist/index.cjs CHANGED
@@ -150,7 +150,10 @@ var LoggerConfig = class extends (0, _btravstack_di.Port)("LoggerConfig") {};
150
150
  */
151
151
  const observability = (options = {}) => (0, _btravstack_di.Module)("Observability")({
152
152
  needs: [_btravstack_config.Env],
153
- provides: [_btravstack_config.Config.provider(LoggerConfig)(loggerSchema(options.level)), (0, _btravstack_di.Provider)(_btravstack_core.Logger)({ config: LoggerConfig }, { sync: ({ config }) => createLogger(options.sink ?? jsonSink(), config.level) })],
153
+ provides: [_btravstack_config.Config.provider(LoggerConfig)(loggerSchema(options.level)), (0, _btravstack_di.Provider)(_btravstack_core.Logger)({
154
+ inject: { config: LoggerConfig },
155
+ sync: ({ config }) => createLogger(options.sink ?? jsonSink(), config.level)
156
+ })],
154
157
  exports: [_btravstack_core.Logger, LoggerConfig]
155
158
  });
156
159
  /**
package/dist/index.mjs CHANGED
@@ -149,7 +149,10 @@ var LoggerConfig = class extends Port("LoggerConfig") {};
149
149
  */
150
150
  const observability = (options = {}) => Module("Observability")({
151
151
  needs: [Env],
152
- provides: [Config.provider(LoggerConfig)(loggerSchema(options.level)), Provider(Logger)({ config: LoggerConfig }, { sync: ({ config }) => createLogger(options.sink ?? jsonSink(), config.level) })],
152
+ provides: [Config.provider(LoggerConfig)(loggerSchema(options.level)), Provider(Logger)({
153
+ inject: { config: LoggerConfig },
154
+ sync: ({ config }) => createLogger(options.sink ?? jsonSink(), config.level)
155
+ })],
153
156
  exports: [Logger, LoggerConfig]
154
157
  });
155
158
  /**
package/dist/otel.cjs CHANGED
@@ -35,8 +35,12 @@ var OtelSdk = class extends (0, _btravstack_di.Port)("OtelSdk") {};
35
35
  */
36
36
  const otel = (options) => (0, _btravstack_di.Module)("Otel")({
37
37
  provides: [
38
- _btravstack_di.Provider.member(_btravstack_core.Instrumentations)({ value: () => Promise.resolve(void 0) }),
39
- (0, _btravstack_di.Provider)(OtelSdk)({ offered: _btravstack_core.Instrumentations }, {
38
+ _btravstack_di.Provider.member(_btravstack_core.Instrumentations)({
39
+ inject: {},
40
+ value: () => Promise.resolve(void 0)
41
+ }),
42
+ (0, _btravstack_di.Provider)(OtelSdk)({
43
+ inject: { offered: _btravstack_core.Instrumentations },
40
44
  acquire: ({ offered }) => (0, unthrown.fromSafePromise)(Promise.all(offered.map((load) => load())).then((loaded) => {
41
45
  const sdk = new _opentelemetry_sdk_node.NodeSDK({
42
46
  ...options,
@@ -47,11 +51,17 @@ const otel = (options) => (0, _btravstack_di.Module)("Otel")({
47
51
  })),
48
52
  release: (sdk) => sdk.shutdown()
49
53
  }),
50
- (0, _btravstack_di.Provider)(_btravstack_core.Tracer)({ sdk: OtelSdk }, { sync: () => {
51
- const tracer = _opentelemetry_api.trace.getTracer("@btravstack/observability");
52
- return { startSpan: (name) => tracer.startSpan(name) };
53
- } }),
54
- (0, _btravstack_di.Provider)(_btravstack_core.Meter)({ sdk: OtelSdk }, { sync: () => _opentelemetry_api.metrics.getMeter("@btravstack/observability") })
54
+ (0, _btravstack_di.Provider)(_btravstack_core.Tracer)({
55
+ inject: { sdk: OtelSdk },
56
+ sync: () => {
57
+ const tracer = _opentelemetry_api.trace.getTracer("@btravstack/observability");
58
+ return { startSpan: (name) => tracer.startSpan(name) };
59
+ }
60
+ }),
61
+ (0, _btravstack_di.Provider)(_btravstack_core.Meter)({
62
+ inject: { sdk: OtelSdk },
63
+ sync: () => _opentelemetry_api.metrics.getMeter("@btravstack/observability")
64
+ })
55
65
  ],
56
66
  exports: [_btravstack_core.Tracer, _btravstack_core.Meter]
57
67
  });
@@ -72,7 +82,8 @@ var UnitSpan = class extends (0, _btravstack_di.Port)("UnitSpan") {};
72
82
  */
73
83
  const UnitSpanModule = (0, _btravstack_di.Module)("UnitSpan")({
74
84
  needs: [_btravstack_core.Tracer],
75
- provides: [(0, _btravstack_di.Provider)(UnitSpan)({ tracer: _btravstack_core.Tracer }, {
85
+ provides: [(0, _btravstack_di.Provider)(UnitSpan)({
86
+ inject: { tracer: _btravstack_core.Tracer },
76
87
  sync: ({ tracer }) => {
77
88
  const unit = (0, _btravstack_core.currentUnit)();
78
89
  const span = tracer.startSpan("unit");
package/dist/otel.mjs CHANGED
@@ -34,8 +34,12 @@ var OtelSdk = class extends Port("OtelSdk") {};
34
34
  */
35
35
  const otel = (options) => Module("Otel")({
36
36
  provides: [
37
- Provider.member(Instrumentations)({ value: () => Promise.resolve(void 0) }),
38
- Provider(OtelSdk)({ offered: Instrumentations }, {
37
+ Provider.member(Instrumentations)({
38
+ inject: {},
39
+ value: () => Promise.resolve(void 0)
40
+ }),
41
+ Provider(OtelSdk)({
42
+ inject: { offered: Instrumentations },
39
43
  acquire: ({ offered }) => fromSafePromise(Promise.all(offered.map((load) => load())).then((loaded) => {
40
44
  const sdk = new NodeSDK({
41
45
  ...options,
@@ -46,11 +50,17 @@ const otel = (options) => Module("Otel")({
46
50
  })),
47
51
  release: (sdk) => sdk.shutdown()
48
52
  }),
49
- Provider(Tracer)({ sdk: OtelSdk }, { sync: () => {
50
- const tracer = trace.getTracer("@btravstack/observability");
51
- return { startSpan: (name) => tracer.startSpan(name) };
52
- } }),
53
- Provider(Meter)({ sdk: OtelSdk }, { sync: () => metrics.getMeter("@btravstack/observability") })
53
+ Provider(Tracer)({
54
+ inject: { sdk: OtelSdk },
55
+ sync: () => {
56
+ const tracer = trace.getTracer("@btravstack/observability");
57
+ return { startSpan: (name) => tracer.startSpan(name) };
58
+ }
59
+ }),
60
+ Provider(Meter)({
61
+ inject: { sdk: OtelSdk },
62
+ sync: () => metrics.getMeter("@btravstack/observability")
63
+ })
54
64
  ],
55
65
  exports: [Tracer, Meter]
56
66
  });
@@ -71,7 +81,8 @@ var UnitSpan = class extends Port("UnitSpan") {};
71
81
  */
72
82
  const UnitSpanModule = Module("UnitSpan")({
73
83
  needs: [Tracer],
74
- provides: [Provider(UnitSpan)({ tracer: Tracer }, {
84
+ provides: [Provider(UnitSpan)({
85
+ inject: { tracer: Tracer },
75
86
  sync: ({ tracer }) => {
76
87
  const unit = currentUnit();
77
88
  const span = tracer.startSpan("unit");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@btravstack/observability",
3
- "version": "0.7.0",
3
+ "version": "0.9.0",
4
4
  "description": "Observability for @btravstack/core: a strict Logger port correlated with the kernel's units, a dependency-free JSON sink, and the lifecycle events as log lines",
5
5
  "keywords": [
6
6
  "dependency-injection",
@@ -69,7 +69,7 @@
69
69
  "@opentelemetry/api": "1.9.1",
70
70
  "@opentelemetry/sdk-node": "0.221.0",
71
71
  "@opentelemetry/sdk-trace": "2.10.0",
72
- "@types/node": "26.2.0",
72
+ "@types/node": "26.4.0",
73
73
  "@unthrown/vitest": "5.7.0",
74
74
  "@vitest/coverage-v8": "4.1.11",
75
75
  "pino": "10.3.1",
@@ -77,19 +77,19 @@
77
77
  "typescript": "7.0.2",
78
78
  "unthrown": "5.7.0",
79
79
  "vitest": "4.1.11",
80
- "@btravstack/config": "0.7.0",
81
- "@btravstack/core": "0.7.0",
82
- "@btravstack/di": "0.7.0",
83
- "@btravstack/testing": "0.7.0"
80
+ "@btravstack/config": "0.9.0",
81
+ "@btravstack/core": "0.9.0",
82
+ "@btravstack/di": "0.9.0",
83
+ "@btravstack/testing": "0.9.0"
84
84
  },
85
85
  "peerDependencies": {
86
86
  "@opentelemetry/api": "^1.9.0",
87
87
  "@opentelemetry/sdk-node": "^0.221.0",
88
88
  "pino": "^10",
89
89
  "unthrown": "^5.0.0",
90
- "@btravstack/config": "^0.7.0",
91
- "@btravstack/core": "^0.7.0",
92
- "@btravstack/di": "^0.7.0"
90
+ "@btravstack/config": "^0.9.0",
91
+ "@btravstack/core": "^0.9.0",
92
+ "@btravstack/di": "^0.9.0"
93
93
  },
94
94
  "peerDependenciesMeta": {
95
95
  "@opentelemetry/api": {