@qlever-llc/trellis 0.10.10 → 0.10.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.
- package/esm/client.d.ts +2 -0
- package/esm/client.d.ts.map +1 -1
- package/esm/client.js +2 -0
- package/esm/client_connect.d.ts +3 -2
- package/esm/client_connect.d.ts.map +1 -1
- package/esm/client_connect.js +4 -1
- package/esm/errors/TrellisError.d.ts +3 -3
- package/esm/errors/TrellisError.js +3 -3
- package/esm/server/health.d.ts.map +1 -1
- package/esm/server/health.js +34 -3
- package/esm/server/internal_jobs/job-manager.d.ts.map +1 -1
- package/esm/server/internal_jobs/job-manager.js +32 -1
- package/esm/server/runtime.d.ts +3 -0
- package/esm/server/runtime.d.ts.map +1 -1
- package/esm/server/service.d.ts +15 -0
- package/esm/server/service.d.ts.map +1 -1
- package/esm/server/service.js +41 -3
- package/esm/server.d.ts.map +1 -1
- package/esm/server.js +99 -10
- package/esm/service/deno.d.ts +1 -1
- package/esm/service/deno.d.ts.map +1 -1
- package/esm/service/mod.d.ts +1 -1
- package/esm/service/mod.d.ts.map +1 -1
- package/esm/service/node.d.ts +1 -1
- package/esm/service/node.d.ts.map +1 -1
- package/esm/service/outbox_inbox.d.ts.map +1 -1
- package/esm/service/outbox_inbox.js +14 -0
- package/esm/telemetry/core.d.ts.map +1 -1
- package/esm/telemetry/core.js +1 -1
- package/esm/telemetry/env.d.ts.map +1 -1
- package/esm/telemetry/env.js +6 -1
- package/esm/telemetry/init.d.ts +3 -0
- package/esm/telemetry/init.d.ts.map +1 -0
- package/esm/telemetry/init.js +7 -0
- package/esm/telemetry/metrics.d.ts +34 -0
- package/esm/telemetry/metrics.d.ts.map +1 -0
- package/esm/telemetry/metrics.js +181 -0
- package/esm/telemetry/mod.d.ts +3 -0
- package/esm/telemetry/mod.d.ts.map +1 -1
- package/esm/telemetry/mod.js +2 -0
- package/esm/telemetry/runtime.d.ts +2 -0
- package/esm/telemetry/runtime.d.ts.map +1 -0
- package/esm/telemetry/runtime.js +134 -0
- package/esm/telemetry.d.ts +3 -0
- package/esm/telemetry.d.ts.map +1 -0
- package/esm/telemetry.js +2 -0
- package/esm/transfer.d.ts.map +1 -1
- package/esm/transfer.js +27 -16
- package/esm/trellis.d.ts +28 -4
- package/esm/trellis.d.ts.map +1 -1
- package/esm/trellis.js +575 -80
- package/package.json +7 -5
- package/script/client.d.ts +2 -0
- package/script/client.d.ts.map +1 -1
- package/script/client.js +2 -0
- package/script/client_connect.d.ts +3 -2
- package/script/client_connect.d.ts.map +1 -1
- package/script/client_connect.js +4 -1
- package/script/errors/TrellisError.d.ts +3 -3
- package/script/errors/TrellisError.js +3 -3
- package/script/server/health.d.ts.map +1 -1
- package/script/server/health.js +34 -3
- package/script/server/internal_jobs/job-manager.d.ts.map +1 -1
- package/script/server/internal_jobs/job-manager.js +32 -1
- package/script/server/runtime.d.ts +3 -0
- package/script/server/runtime.d.ts.map +1 -1
- package/script/server/service.d.ts +15 -0
- package/script/server/service.d.ts.map +1 -1
- package/script/server/service.js +40 -2
- package/script/server.d.ts.map +1 -1
- package/script/server.js +98 -9
- package/script/service/deno.d.ts +1 -1
- package/script/service/deno.d.ts.map +1 -1
- package/script/service/mod.d.ts +1 -1
- package/script/service/mod.d.ts.map +1 -1
- package/script/service/node.d.ts +1 -1
- package/script/service/node.d.ts.map +1 -1
- package/script/service/outbox_inbox.d.ts.map +1 -1
- package/script/service/outbox_inbox.js +14 -0
- package/script/telemetry/core.d.ts.map +1 -1
- package/script/telemetry/core.js +1 -1
- package/script/telemetry/env.d.ts.map +1 -1
- package/script/telemetry/env.js +6 -1
- package/script/telemetry/init.d.ts +3 -0
- package/script/telemetry/init.d.ts.map +1 -0
- package/script/telemetry/init.js +10 -0
- package/script/telemetry/metrics.d.ts +34 -0
- package/script/telemetry/metrics.d.ts.map +1 -0
- package/script/telemetry/metrics.js +186 -0
- package/script/telemetry/mod.d.ts +3 -0
- package/script/telemetry/mod.d.ts.map +1 -1
- package/script/telemetry/mod.js +7 -1
- package/script/telemetry/runtime.d.ts +2 -0
- package/script/telemetry/runtime.d.ts.map +1 -0
- package/script/telemetry/runtime.js +137 -0
- package/script/telemetry.d.ts +3 -0
- package/script/telemetry.d.ts.map +1 -0
- package/script/telemetry.js +18 -0
- package/script/transfer.d.ts.map +1 -1
- package/script/transfer.js +28 -17
- package/script/trellis.d.ts +28 -4
- package/script/trellis.d.ts.map +1 -1
- package/script/trellis.js +606 -110
- package/src/client.ts +4 -0
- package/src/client_connect.ts +11 -9
- package/src/errors/TrellisError.ts +4 -4
- package/src/server/health.ts +41 -3
- package/src/server/internal_jobs/job-manager.ts +35 -5
- package/src/server/runtime.ts +4 -0
- package/src/server/service.ts +75 -3
- package/src/server.ts +124 -14
- package/src/service/deno.ts +1 -0
- package/src/service/mod.ts +1 -0
- package/src/service/node.ts +1 -0
- package/src/service/outbox_inbox.ts +14 -0
- package/src/telemetry/core.ts +1 -1
- package/src/telemetry/env.ts +5 -1
- package/src/telemetry/init.ts +8 -0
- package/src/telemetry/metrics.ts +294 -0
- package/src/telemetry/mod.ts +7 -0
- package/src/telemetry/runtime.ts +218 -0
- package/src/telemetry.ts +2 -0
- package/src/transfer.ts +69 -30
- package/src/trellis.ts +652 -141
- package/esm/tracing.d.ts +0 -5
- package/esm/tracing.d.ts.map +0 -1
- package/esm/tracing.js +0 -8
- package/script/tracing.d.ts +0 -5
- package/script/tracing.d.ts.map +0 -1
- package/script/tracing.js +0 -27
- package/src/tracing.ts +0 -28
package/esm/server.js
CHANGED
|
@@ -16,7 +16,8 @@ import { ulid } from "ulid";
|
|
|
16
16
|
import { parseSchema } from "./codec.js";
|
|
17
17
|
import { AuthError, OperationAlreadyTerminalError, OperationMismatchError, OperationNotFoundError, TransferError, UnexpectedError, ValidationError, } from "./errors/index.js";
|
|
18
18
|
import { serverLogger } from "./server_logger.js";
|
|
19
|
-
import {
|
|
19
|
+
import { recordTrellisError, } from "./telemetry/mod.js";
|
|
20
|
+
import { annotateHandlerBoundaryError, base64urlDecode, base64urlEncode, buildProofInput, buildRuntimeOperationSnapshot, isOperationDeferred, isResultLike, isTerminalRuntimeOperationSnapshot, safeJson, sha256, toArrayBuffer, Trellis, } from "./trellis.js";
|
|
20
21
|
function isJsonValue(value) {
|
|
21
22
|
if (value === null || typeof value === "string" || typeof value === "number" ||
|
|
22
23
|
typeof value === "boolean") {
|
|
@@ -79,6 +80,29 @@ function asOptionalStringRecordPointerValue(input, pointer) {
|
|
|
79
80
|
}
|
|
80
81
|
return ok(Object.fromEntries(entries));
|
|
81
82
|
}
|
|
83
|
+
function traceIdFromTraceparent(traceparent) {
|
|
84
|
+
const [version, traceId, parentId, flags, extra] = traceparent?.split("-") ??
|
|
85
|
+
[];
|
|
86
|
+
if (extra !== undefined ||
|
|
87
|
+
!/^[0-9a-f]{2}$/u.test(version ?? "") ||
|
|
88
|
+
version === "ff" ||
|
|
89
|
+
!/^[0-9a-f]{32}$/u.test(traceId ?? "") ||
|
|
90
|
+
traceId === "00000000000000000000000000000000" ||
|
|
91
|
+
!/^[0-9a-f]{16}$/u.test(parentId ?? "") ||
|
|
92
|
+
parentId === "0000000000000000" ||
|
|
93
|
+
!/^[0-9a-f]{2}$/u.test(flags ?? "")) {
|
|
94
|
+
return undefined;
|
|
95
|
+
}
|
|
96
|
+
return traceId;
|
|
97
|
+
}
|
|
98
|
+
function recordOperationServerError(error, attributes) {
|
|
99
|
+
recordTrellisError(error, {
|
|
100
|
+
messagingSystem: "nats",
|
|
101
|
+
surface: "operation",
|
|
102
|
+
direction: "server",
|
|
103
|
+
...attributes,
|
|
104
|
+
});
|
|
105
|
+
}
|
|
82
106
|
export class TrellisServiceRuntime extends Trellis {
|
|
83
107
|
constructor(name, nats, auth, opts) {
|
|
84
108
|
super(name, nats, auth, { ...opts, log: opts?.log ?? serverLogger });
|
|
@@ -118,7 +142,7 @@ export class TrellisServiceRuntime extends Trellis {
|
|
|
118
142
|
event: { type: "completed" },
|
|
119
143
|
}),
|
|
120
144
|
fail: (operationId, error) => __classPrivateFieldGet(this, _TrellisServiceRuntime_instances, "m", _TrellisServiceRuntime_applyOperationUpdate).call(this, operationId, "failed", {
|
|
121
|
-
patch: { error:
|
|
145
|
+
patch: { error: error.toSerializable() },
|
|
122
146
|
event: { type: "failed" },
|
|
123
147
|
}),
|
|
124
148
|
cancel: (operationId) => __classPrivateFieldGet(this, _TrellisServiceRuntime_instances, "m", _TrellisServiceRuntime_applyOperationUpdate).call(this, operationId, "cancelled", {
|
|
@@ -176,7 +200,7 @@ export class TrellisServiceRuntime extends Trellis {
|
|
|
176
200
|
}
|
|
177
201
|
runtime.waiters.clear();
|
|
178
202
|
};
|
|
179
|
-
const makeOperation = (runtime) => {
|
|
203
|
+
const makeOperation = (runtime, context) => {
|
|
180
204
|
const ensureActive = () => {
|
|
181
205
|
if (runtime.terminal) {
|
|
182
206
|
return err(__classPrivateFieldGet(this, _TrellisServiceRuntime_instances, "m", _TrellisServiceRuntime_operationAlreadyTerminalError).call(this, runtime));
|
|
@@ -241,8 +265,16 @@ export class TrellisServiceRuntime extends Trellis {
|
|
|
241
265
|
const active = ensureActive();
|
|
242
266
|
if (active)
|
|
243
267
|
return active;
|
|
268
|
+
const annotatedError = annotateHandlerBoundaryError(error, {
|
|
269
|
+
operation: String(operation),
|
|
270
|
+
requestId: context.requestId,
|
|
271
|
+
service: this.name,
|
|
272
|
+
contractId: this.contractId,
|
|
273
|
+
contractDigest: this.contractDigest,
|
|
274
|
+
traceId: context.traceId,
|
|
275
|
+
});
|
|
244
276
|
const snapshot = buildRuntimeOperationSnapshot(runtime, "failed", {
|
|
245
|
-
error:
|
|
277
|
+
error: annotatedError.toSerializable(),
|
|
246
278
|
completedAt: now(),
|
|
247
279
|
});
|
|
248
280
|
runtime.sequence += 1;
|
|
@@ -387,29 +419,50 @@ export class TrellisServiceRuntime extends Trellis {
|
|
|
387
419
|
const validated = await authenticate(msg, true);
|
|
388
420
|
const value = validated.take();
|
|
389
421
|
if (isErr(value)) {
|
|
422
|
+
recordOperationServerError(value.error, {
|
|
423
|
+
operation: String(operation),
|
|
424
|
+
phase: "start",
|
|
425
|
+
});
|
|
390
426
|
this.respondWithError(msg, value.error);
|
|
391
427
|
continue;
|
|
392
428
|
}
|
|
393
429
|
let transferSession;
|
|
394
430
|
if (ctx.transfer) {
|
|
395
431
|
if (!__classPrivateFieldGet(this, _TrellisServiceRuntime_transferSupport, "f")) {
|
|
396
|
-
|
|
432
|
+
const error = new UnexpectedError({
|
|
397
433
|
cause: new Error(`Operation '${String(operation)}' declared transfer support but no runtime transfer support is configured`),
|
|
398
|
-
})
|
|
434
|
+
});
|
|
435
|
+
recordOperationServerError(error, {
|
|
436
|
+
operation: String(operation),
|
|
437
|
+
phase: "start",
|
|
438
|
+
});
|
|
439
|
+
this.respondWithError(msg, error);
|
|
399
440
|
continue;
|
|
400
441
|
}
|
|
401
442
|
const key = asStringPointerValue(String(operation), value.input, ctx.transfer.key, "key").take();
|
|
402
443
|
if (isErr(key)) {
|
|
444
|
+
recordOperationServerError(key.error, {
|
|
445
|
+
operation: String(operation),
|
|
446
|
+
phase: "start",
|
|
447
|
+
});
|
|
403
448
|
this.respondWithError(msg, key.error);
|
|
404
449
|
continue;
|
|
405
450
|
}
|
|
406
451
|
const contentType = asOptionalStringPointerValue(value.input, ctx.transfer.contentType).take();
|
|
407
452
|
if (isErr(contentType)) {
|
|
453
|
+
recordOperationServerError(contentType.error, {
|
|
454
|
+
operation: String(operation),
|
|
455
|
+
phase: "start",
|
|
456
|
+
});
|
|
408
457
|
this.respondWithError(msg, contentType.error);
|
|
409
458
|
continue;
|
|
410
459
|
}
|
|
411
460
|
const metadata = asOptionalStringRecordPointerValue(value.input, ctx.transfer.metadata).take();
|
|
412
461
|
if (isErr(metadata)) {
|
|
462
|
+
recordOperationServerError(metadata.error, {
|
|
463
|
+
operation: String(operation),
|
|
464
|
+
phase: "start",
|
|
465
|
+
});
|
|
413
466
|
this.respondWithError(msg, metadata.error);
|
|
414
467
|
continue;
|
|
415
468
|
}
|
|
@@ -426,6 +479,10 @@ export class TrellisServiceRuntime extends Trellis {
|
|
|
426
479
|
...(metadata !== undefined ? { metadata } : {}),
|
|
427
480
|
}).take();
|
|
428
481
|
if (isErr(openedTransferValue)) {
|
|
482
|
+
recordOperationServerError(openedTransferValue.error, {
|
|
483
|
+
operation: String(operation),
|
|
484
|
+
phase: "start",
|
|
485
|
+
});
|
|
429
486
|
this.respondWithError(msg, openedTransferValue.error);
|
|
430
487
|
continue;
|
|
431
488
|
}
|
|
@@ -483,7 +540,11 @@ export class TrellisServiceRuntime extends Trellis {
|
|
|
483
540
|
};
|
|
484
541
|
msg.respond(JSON.stringify(accepted));
|
|
485
542
|
void (async () => {
|
|
486
|
-
const
|
|
543
|
+
const operationContext = {
|
|
544
|
+
requestId: msg.headers?.get("request-id"),
|
|
545
|
+
traceId: traceIdFromTraceparent(msg.headers?.get("traceparent")),
|
|
546
|
+
};
|
|
547
|
+
const op = makeOperation(runtime, operationContext);
|
|
487
548
|
try {
|
|
488
549
|
const handlerResult = await handler(transferSession
|
|
489
550
|
? {
|
|
@@ -501,7 +562,19 @@ export class TrellisServiceRuntime extends Trellis {
|
|
|
501
562
|
? handlerResult.take()
|
|
502
563
|
: handlerResult;
|
|
503
564
|
if (isErr(handlerOutcome)) {
|
|
504
|
-
|
|
565
|
+
const error = annotateHandlerBoundaryError(handlerOutcome.error, {
|
|
566
|
+
operation: String(operation),
|
|
567
|
+
requestId: operationContext.requestId,
|
|
568
|
+
service: this.name,
|
|
569
|
+
contractId: this.contractId,
|
|
570
|
+
contractDigest: this.contractDigest,
|
|
571
|
+
traceId: operationContext.traceId,
|
|
572
|
+
});
|
|
573
|
+
recordOperationServerError(error, {
|
|
574
|
+
operation: String(operation),
|
|
575
|
+
phase: "handler_result",
|
|
576
|
+
});
|
|
577
|
+
await op.fail(error);
|
|
505
578
|
return;
|
|
506
579
|
}
|
|
507
580
|
if (isOperationDeferred(handlerOutcome)) {
|
|
@@ -519,7 +592,19 @@ export class TrellisServiceRuntime extends Trellis {
|
|
|
519
592
|
}
|
|
520
593
|
}
|
|
521
594
|
catch (cause) {
|
|
522
|
-
|
|
595
|
+
const error = annotateHandlerBoundaryError(cause, {
|
|
596
|
+
operation: String(operation),
|
|
597
|
+
requestId: operationContext.requestId,
|
|
598
|
+
service: this.name,
|
|
599
|
+
contractId: this.contractId,
|
|
600
|
+
contractDigest: this.contractDigest,
|
|
601
|
+
traceId: operationContext.traceId,
|
|
602
|
+
});
|
|
603
|
+
recordOperationServerError(error, {
|
|
604
|
+
operation: String(operation),
|
|
605
|
+
phase: "handler_throw",
|
|
606
|
+
});
|
|
607
|
+
await op.fail(error);
|
|
523
608
|
}
|
|
524
609
|
})();
|
|
525
610
|
}
|
|
@@ -717,7 +802,7 @@ _TrellisServiceRuntime_version = new WeakMap(), _TrellisServiceRuntime_log = new
|
|
|
717
802
|
event: { type: "completed" },
|
|
718
803
|
}),
|
|
719
804
|
fail: (error) => __classPrivateFieldGet(this, _TrellisServiceRuntime_instances, "m", _TrellisServiceRuntime_applyControlledOperationUpdate).call(this, runtime, ctx, "failed", {
|
|
720
|
-
patch: { error:
|
|
805
|
+
patch: { error: error.toSerializable() },
|
|
721
806
|
event: { type: "failed" },
|
|
722
807
|
}),
|
|
723
808
|
cancel: () => {
|
|
@@ -989,6 +1074,10 @@ _TrellisServiceRuntime_version = new WeakMap(), _TrellisServiceRuntime_log = new
|
|
|
989
1074
|
const trellisError = error instanceof BaseError
|
|
990
1075
|
? error
|
|
991
1076
|
: new UnexpectedError({ cause: error });
|
|
1077
|
+
recordOperationServerError(trellisError, {
|
|
1078
|
+
operation,
|
|
1079
|
+
phase: "control",
|
|
1080
|
+
});
|
|
992
1081
|
msg.respond(JSON.stringify({
|
|
993
1082
|
kind: "error",
|
|
994
1083
|
error: trellisError.toSerializable(),
|
package/esm/service/deno.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import "../_dnt.polyfills.js";
|
|
2
|
-
export { type BoundTrellisService, type FeedHandler, type HealthCheckHandler, type HealthInfoHandler, type JobArgs, type JobHandler, type JobQueue, type JobResult, type JobsFacadeOf, type OperationHandler, type OperationRegistration, type RpcHandler, type ServiceContract, type ServiceEventHandler, type Trellis, TrellisService, type TrellisServiceConnectOpts, } from "../server/service.js";
|
|
2
|
+
export { type BoundTrellisService, type FeedHandler, type HealthCheckHandler, type HealthInfoHandler, type JobArgs, type JobHandler, type JobQueue, type JobResult, type JobsFacadeOf, type OperationHandler, type OperationRegistration, type RpcHandler, type ServiceContract, type ServiceEventHandler, type Trellis, TrellisService, type TrellisServiceConnectOpts, type TrellisServiceConnectTelemetryOpts, } from "../server/service.js";
|
|
3
3
|
//# sourceMappingURL=deno.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deno.d.ts","sourceRoot":"","sources":["../../src/service/deno.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,OAAO,EACZ,cAAc,EACd,KAAK,yBAAyB,
|
|
1
|
+
{"version":3,"file":"deno.d.ts","sourceRoot":"","sources":["../../src/service/deno.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,OAAO,EACZ,cAAc,EACd,KAAK,yBAAyB,EAC9B,KAAK,kCAAkC,GACxC,MAAM,sBAAsB,CAAC"}
|
package/esm/service/mod.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ import "../_dnt.polyfills.js";
|
|
|
10
10
|
export { createHealthHeartbeat, type HealthCheckFn, type HealthCheckResult, type HealthHeartbeat, type HealthResponse, runAllHealthChecks, runAllServiceHealthChecks, runHealthCheck, runServiceHealthCheck, ServiceHealth, type ServiceHealthCheck, type ServiceHealthCheckFn, type ServiceHealthInfo, type ServiceHealthInfoFn, } from "../server/health.js";
|
|
11
11
|
export { mountStandardHealthRpc } from "../server/health_rpc.js";
|
|
12
12
|
export { HealthCheckResultSchema, HealthHeartbeatHeaderSchema, HealthHeartbeatSchema, HealthHeartbeatServiceSchema, HealthInfoSchema, HealthResponseSchema, HealthRpcSchema, } from "../server/health_schemas.js";
|
|
13
|
-
export { type BoundTrellisService, type FeedHandler, type HealthCheckHandler, type HealthInfoHandler, type JobArgs, type JobHandler, type JobQueue, type JobResult, type JobsFacadeOf, type OperationHandler, type OperationRegistration, type RpcHandler, type ServiceContract, type ServiceEventHandler, StoreHandle, type Trellis, TrellisService, type TrellisServiceConnectOpts, } from "../server/service.js";
|
|
13
|
+
export { type BoundTrellisService, type FeedHandler, type HealthCheckHandler, type HealthInfoHandler, type JobArgs, type JobHandler, type JobQueue, type JobResult, type JobsFacadeOf, type OperationHandler, type OperationRegistration, type RpcHandler, type ServiceContract, type ServiceEventHandler, StoreHandle, type Trellis, TrellisService, type TrellisServiceConnectOpts, type TrellisServiceConnectTelemetryOpts, } from "../server/service.js";
|
|
14
14
|
export { createPostgresOutboxSchema, createSqliteOutboxSchema, createSqlOutboxAdapter, defaultSqlOutboxTables, dispatchOutbox, type InboxRepository, type KvOutboxRecord, KvOutboxRecordSchema, MemoryInboxRepository, MemoryOutboxRepository, NatsKvInboxRepository, NatsKvOutboxRepository, OutboxDispatcher, type OutboxDispatcherOptions, type OutboxDispatchResult, type OutboxKvEntry, type OutboxKvStore, type OutboxMessage, type OutboxMessageState, outboxMessageToPrepared, type OutboxRepository, type SqlDialect, type SqlExecutor, SqlInboxRepository, type SqlOutboxAdapter, SqlOutboxRepository, type SqlOutboxTables, type SqlRow, } from "./outbox_inbox.js";
|
|
15
15
|
export { createEventContext, type EventContext, type EventHandler, type GroupedSubscription, isGroupedSubscription, type MultiEventSubscription, type MultiSubscribeOpts, type OrderingGroup, type SingleSubscription, type SubscribeOpts, } from "../server/subscription.js";
|
|
16
16
|
//# sourceMappingURL=mod.d.ts.map
|
package/esm/service/mod.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/service/mod.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,sBAAsB,CAAC;AAG9B,OAAO,EACL,qBAAqB,EACrB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACL,uBAAuB,EACvB,2BAA2B,EAC3B,qBAAqB,EACrB,4BAA4B,EAC5B,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,WAAW,EACX,KAAK,OAAO,EACZ,cAAc,EACd,KAAK,yBAAyB,
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/service/mod.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,sBAAsB,CAAC;AAG9B,OAAO,EACL,qBAAqB,EACrB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EACL,uBAAuB,EACvB,2BAA2B,EAC3B,qBAAqB,EACrB,4BAA4B,EAC5B,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,WAAW,EACX,KAAK,OAAO,EACZ,cAAc,EACd,KAAK,yBAAyB,EAC9B,KAAK,kCAAkC,GACxC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,uBAAuB,EACvB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,MAAM,GACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,qBAAqB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,aAAa,GACnB,MAAM,2BAA2B,CAAC"}
|
package/esm/service/node.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import "../_dnt.polyfills.js";
|
|
2
|
-
export { type BoundTrellisService, type FeedHandler, type HealthCheckHandler, type HealthInfoHandler, type JobArgs, type JobHandler, type JobQueue, type JobResult, type JobsFacadeOf, type OperationHandler, type OperationRegistration, type RpcHandler, type ServiceContract, type ServiceEventHandler, type Trellis, TrellisService, type TrellisServiceConnectOpts, } from "../server/service.js";
|
|
2
|
+
export { type BoundTrellisService, type FeedHandler, type HealthCheckHandler, type HealthInfoHandler, type JobArgs, type JobHandler, type JobQueue, type JobResult, type JobsFacadeOf, type OperationHandler, type OperationRegistration, type RpcHandler, type ServiceContract, type ServiceEventHandler, type Trellis, TrellisService, type TrellisServiceConnectOpts, type TrellisServiceConnectTelemetryOpts, } from "../server/service.js";
|
|
3
3
|
//# sourceMappingURL=node.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/service/node.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,OAAO,EACZ,cAAc,EACd,KAAK,yBAAyB,
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/service/node.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,OAAO,EACZ,cAAc,EACd,KAAK,yBAAyB,EAC9B,KAAK,kCAAkC,GACxC,MAAM,sBAAsB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outbox_inbox.d.ts","sourceRoot":"","sources":["../../src/service/outbox_inbox.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAS,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,KAAK,YAAY,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"outbox_inbox.d.ts","sourceRoot":"","sources":["../../src/service/outbox_inbox.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,7 @@ var _MemoryOutboxRepository_messages, _MemoryInboxRepository_seen, _OutboxDispat
|
|
|
13
13
|
import { isErr } from "@qlever-llc/result";
|
|
14
14
|
import { Type } from "typebox";
|
|
15
15
|
import { TypedKV } from "../kv.js";
|
|
16
|
+
import { recordTrellisError } from "../telemetry/mod.js";
|
|
16
17
|
export const defaultSqlOutboxTables = Object.freeze({
|
|
17
18
|
outbox: "trellis_outbox",
|
|
18
19
|
inbox: "trellis_inbox",
|
|
@@ -539,6 +540,12 @@ _OutboxDispatcher_repository = new WeakMap(), _OutboxDispatcher_runtime = new We
|
|
|
539
540
|
});
|
|
540
541
|
}
|
|
541
542
|
catch (error) {
|
|
543
|
+
recordTrellisError(error, {
|
|
544
|
+
surface: "outbox",
|
|
545
|
+
direction: "dispatcher",
|
|
546
|
+
operation: "batch",
|
|
547
|
+
phase: "dispatch",
|
|
548
|
+
});
|
|
542
549
|
__classPrivateFieldGet(this, _OutboxDispatcher_instances, "m", _OutboxDispatcher_scheduleRetryWakeup).call(this);
|
|
543
550
|
try {
|
|
544
551
|
__classPrivateFieldGet(this, _OutboxDispatcher_options, "f").onError?.(error);
|
|
@@ -575,6 +582,13 @@ export async function dispatchOutbox(repository, runtime, options = {}) {
|
|
|
575
582
|
const result = await runtime.publishPrepared(outboxMessageToPrepared(message));
|
|
576
583
|
const value = result.take();
|
|
577
584
|
if (isErr(value)) {
|
|
585
|
+
recordTrellisError(value.error, {
|
|
586
|
+
surface: "outbox",
|
|
587
|
+
direction: "dispatcher",
|
|
588
|
+
operation: message.event,
|
|
589
|
+
phase: "publish",
|
|
590
|
+
messagingSystem: "nats",
|
|
591
|
+
});
|
|
578
592
|
failed += 1;
|
|
579
593
|
await repository.markFailed(message.id, {
|
|
580
594
|
error: value.error.message,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/telemetry/core.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,OAAO,EACP,KAAK,IAAI,EACT,QAAQ,EACR,cAAc,EACd,KAAK,EACL,KAAK,MAAM,EACZ,MAAM,oBAAoB,CAAC;AAE5B,wBAAgB,SAAS,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/telemetry/core.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,OAAO,EACP,KAAK,IAAI,EACT,QAAQ,EACR,cAAc,EACd,KAAK,EACL,KAAK,MAAM,EACZ,MAAM,oBAAoB,CAAC;AAE5B,wBAAgB,SAAS,CAAC,KAAK,SAAkC,GAAG,MAAM,CAEzE;AAED,wBAAgB,aAAa,IAAI,IAAI,GAAG,SAAS,CAEhD;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAEtD;AAED,wBAAsB,aAAa,CAAC,CAAC,EACnC,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;AACpD,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC"}
|
package/esm/telemetry/core.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { context, SpanKind, SpanStatusCode, trace, } from "@opentelemetry/api";
|
|
2
|
-
export function getTracer(scope = "@qlever-llc/trellis/
|
|
2
|
+
export function getTracer(scope = "@qlever-llc/trellis/telemetry") {
|
|
3
3
|
return trace.getTracer(scope);
|
|
4
4
|
}
|
|
5
5
|
export function getActiveSpan() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/telemetry/env.ts"],"names":[],"mappings":"AAYA,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/telemetry/env.ts"],"names":[],"mappings":"AAYA,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CActD"}
|
package/esm/telemetry/env.js
CHANGED
|
@@ -3,7 +3,12 @@ import * as dntShim from "../_dnt.shims.js";
|
|
|
3
3
|
export function getEnv(key) {
|
|
4
4
|
const deno = dntShim.dntGlobalThis;
|
|
5
5
|
if (deno.Deno?.env?.get) {
|
|
6
|
-
|
|
6
|
+
try {
|
|
7
|
+
return deno.Deno.env.get(key);
|
|
8
|
+
}
|
|
9
|
+
catch {
|
|
10
|
+
return undefined;
|
|
11
|
+
}
|
|
7
12
|
}
|
|
8
13
|
const processGlobal = dntShim.dntGlobalThis;
|
|
9
14
|
return processGlobal.process?.env?.[key];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/telemetry/init.ts"],"names":[],"mappings":"AAGA,2DAA2D;AAC3D,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAGvD"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { configureErrorTraceId } from "./result.js";
|
|
2
|
+
import { initTelemetryRuntime } from "./runtime.js";
|
|
3
|
+
/** Initializes Trellis telemetry for a service runtime. */
|
|
4
|
+
export function initTelemetry(serviceName) {
|
|
5
|
+
configureErrorTraceId();
|
|
6
|
+
initTelemetryRuntime(serviceName);
|
|
7
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { type Meter } from "@opentelemetry/api";
|
|
2
|
+
/** Low-cardinality attributes accepted by {@link recordTrellisError}. */
|
|
3
|
+
export type TrellisErrorMetricAttributes = {
|
|
4
|
+
/** Stable Trellis surface name, such as `rpc`, `jobs`, or `operations`. */
|
|
5
|
+
surface?: string;
|
|
6
|
+
/** Stable flow direction such as `client`, `server`, `publish`, or `consume`. */
|
|
7
|
+
direction?: string;
|
|
8
|
+
/** Stable operation kind or method name. Do not pass IDs, subjects, or URLs. */
|
|
9
|
+
operation?: string;
|
|
10
|
+
/** Stable lifecycle phase such as `encode`, `send`, `auth`, or `handler`. */
|
|
11
|
+
phase?: string;
|
|
12
|
+
/** Stable local Trellis error type override when the thrown value does not expose one. */
|
|
13
|
+
errorType?: string;
|
|
14
|
+
/** Stable wrapped remote Trellis error type override. */
|
|
15
|
+
remoteErrorType?: string;
|
|
16
|
+
/** Stable auth failure reason, such as `missing_session_key`. */
|
|
17
|
+
authReason?: string;
|
|
18
|
+
/** Static messaging system name, when already known. */
|
|
19
|
+
messagingSystem?: string;
|
|
20
|
+
/** Static messaging operation name, when already known. */
|
|
21
|
+
messagingOperation?: string;
|
|
22
|
+
};
|
|
23
|
+
/** Returns the shared Trellis OpenTelemetry meter. */
|
|
24
|
+
export declare function getTrellisMeter(): Meter;
|
|
25
|
+
/** Records one Trellis error with only stable, low-cardinality attributes. */
|
|
26
|
+
export declare function recordTrellisError(error: unknown, attributes?: TrellisErrorMetricAttributes): void;
|
|
27
|
+
/**
|
|
28
|
+
* Builds sanitized, low-cardinality attributes for `trellis.errors`.
|
|
29
|
+
*
|
|
30
|
+
* @internal Exported for focused tests; runtime callers should use
|
|
31
|
+
* {@link recordTrellisError}.
|
|
32
|
+
*/
|
|
33
|
+
export declare function buildTrellisErrorMetricAttributes(error: unknown, attributes?: TrellisErrorMetricAttributes): Record<string, string>;
|
|
34
|
+
//# sourceMappingURL=metrics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../src/telemetry/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,KAAK,EAAW,MAAM,oBAAoB,CAAC;AAiDzD,yEAAyE;AACzE,MAAM,MAAM,4BAA4B,GAAG;IACzC,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0FAA0F;IAC1F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iEAAiE;IACjE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AASF,sDAAsD;AACtD,wBAAgB,eAAe,IAAI,KAAK,CAEvC;AAED,8EAA8E;AAC9E,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,OAAO,EACd,UAAU,GAAE,4BAAiC,GAC5C,IAAI,CAWN;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC/C,KAAK,EAAE,OAAO,EACd,UAAU,GAAE,4BAAiC,GAC5C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAsDxB"}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { metrics } from "@opentelemetry/api";
|
|
2
|
+
const TRELLIS_METER_NAME = "@qlever-llc/trellis";
|
|
3
|
+
const MAX_ATTRIBUTE_LENGTH = 96;
|
|
4
|
+
const LOW_CARDINALITY_PATTERN = /^[A-Za-z0-9_.:-]+$/;
|
|
5
|
+
const UUID_PATTERN = /(^|[_.:-])[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}($|[_.:-])/i;
|
|
6
|
+
const ULID_PATTERN = /(^|[_.:-])[0-7][0-9A-HJKMNP-TV-Z]{25}($|[_.:-])/i;
|
|
7
|
+
const LONG_HEX_SEGMENT_PATTERN = /(^|[_.:-])[0-9a-f]{12,}($|[_.:-])/i;
|
|
8
|
+
const TRELLIS_SUBJECT_PREFIX_PATTERN = /^(rpc|events|feeds|operations|jobs|state|kv|store|resources|transfer)\.v\d+\./;
|
|
9
|
+
const AUTH_REASONS = new Set([
|
|
10
|
+
"invalid_request",
|
|
11
|
+
"missing_session_key",
|
|
12
|
+
"missing_proof",
|
|
13
|
+
"session_not_found",
|
|
14
|
+
"session_expired",
|
|
15
|
+
"invalid_signature",
|
|
16
|
+
"user_not_found",
|
|
17
|
+
"user_already_exists",
|
|
18
|
+
"username_taken",
|
|
19
|
+
"identity_already_exists",
|
|
20
|
+
"identity_not_found",
|
|
21
|
+
"user_inactive",
|
|
22
|
+
"unknown_device",
|
|
23
|
+
"device_deployment_not_found",
|
|
24
|
+
"device_deployment_disabled",
|
|
25
|
+
"device_activation_revoked",
|
|
26
|
+
"unknown_service",
|
|
27
|
+
"service_disabled",
|
|
28
|
+
"iat_out_of_range",
|
|
29
|
+
"invalid_binding_token",
|
|
30
|
+
"session_corrupted",
|
|
31
|
+
"session_already_bound",
|
|
32
|
+
"authtoken_already_used",
|
|
33
|
+
"oauth_session_key_mismatch",
|
|
34
|
+
"reply_subject_mismatch",
|
|
35
|
+
"insufficient_permissions",
|
|
36
|
+
"forbidden",
|
|
37
|
+
"last_admin_required",
|
|
38
|
+
"missing_flow_id",
|
|
39
|
+
"device_activation_flow_not_found",
|
|
40
|
+
"device_activation_flow_expired",
|
|
41
|
+
"device_activation_rejected",
|
|
42
|
+
"device_identity_key_mismatch",
|
|
43
|
+
"invalid_device_qr_mac",
|
|
44
|
+
]);
|
|
45
|
+
/** Returns the shared Trellis OpenTelemetry meter. */
|
|
46
|
+
export function getTrellisMeter() {
|
|
47
|
+
return metrics.getMeter(TRELLIS_METER_NAME);
|
|
48
|
+
}
|
|
49
|
+
/** Records one Trellis error with only stable, low-cardinality attributes. */
|
|
50
|
+
export function recordTrellisError(error, attributes = {}) {
|
|
51
|
+
getTrellisMeter().createCounter("trellis.errors", {
|
|
52
|
+
description: "Trellis errors observed by runtime instrumentation.",
|
|
53
|
+
unit: "{error}",
|
|
54
|
+
}).add(1, buildTrellisErrorMetricAttributes(error, attributes));
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Builds sanitized, low-cardinality attributes for `trellis.errors`.
|
|
58
|
+
*
|
|
59
|
+
* @internal Exported for focused tests; runtime callers should use
|
|
60
|
+
* {@link recordTrellisError}.
|
|
61
|
+
*/
|
|
62
|
+
export function buildTrellisErrorMetricAttributes(error, attributes = {}) {
|
|
63
|
+
const serializable = serializableErrorData(error);
|
|
64
|
+
const metricAttributes = {
|
|
65
|
+
"exception.type": exceptionType(error),
|
|
66
|
+
"trellis.error.type": trellisErrorType(error, serializable, attributes.errorType),
|
|
67
|
+
};
|
|
68
|
+
const remoteErrorType = lowCardinalityValue(attributes.remoteErrorType) ??
|
|
69
|
+
remoteSerializableErrorType(serializable);
|
|
70
|
+
if (remoteErrorType) {
|
|
71
|
+
metricAttributes["trellis.remote_error.type"] = remoteErrorType;
|
|
72
|
+
}
|
|
73
|
+
setLowCardinalityAttribute(metricAttributes, "trellis.surface", attributes.surface);
|
|
74
|
+
setLowCardinalityAttribute(metricAttributes, "trellis.direction", attributes.direction);
|
|
75
|
+
setLowCardinalityAttribute(metricAttributes, "trellis.operation", attributes.operation);
|
|
76
|
+
setLowCardinalityAttribute(metricAttributes, "trellis.phase", attributes.phase);
|
|
77
|
+
setLowCardinalityAttribute(metricAttributes, "trellis.auth.reason", boundedAuthReason(attributes.authReason) ?? authReason(serializable));
|
|
78
|
+
setLowCardinalityAttribute(metricAttributes, "messaging.system", attributes.messagingSystem);
|
|
79
|
+
setLowCardinalityAttribute(metricAttributes, "messaging.operation", attributes.messagingOperation);
|
|
80
|
+
return metricAttributes;
|
|
81
|
+
}
|
|
82
|
+
function trellisErrorType(error, serializable, override) {
|
|
83
|
+
const overrideType = lowCardinalityValue(override);
|
|
84
|
+
if (overrideType)
|
|
85
|
+
return overrideType;
|
|
86
|
+
const serializableType = lowCardinalityValue(serializable?.type);
|
|
87
|
+
if (serializableType)
|
|
88
|
+
return serializableType;
|
|
89
|
+
const objectType = objectStringProperty(error, "type");
|
|
90
|
+
if (objectType)
|
|
91
|
+
return objectType;
|
|
92
|
+
return exceptionType(error);
|
|
93
|
+
}
|
|
94
|
+
function exceptionType(error) {
|
|
95
|
+
if (error instanceof Error) {
|
|
96
|
+
const name = lowCardinalityValue(error.name);
|
|
97
|
+
if (name)
|
|
98
|
+
return name;
|
|
99
|
+
}
|
|
100
|
+
const objectType = objectStringProperty(error, "type");
|
|
101
|
+
if (objectType)
|
|
102
|
+
return objectType;
|
|
103
|
+
return "unknown";
|
|
104
|
+
}
|
|
105
|
+
function serializableErrorData(error) {
|
|
106
|
+
const toSerializable = safeProperty(error, "toSerializable");
|
|
107
|
+
if (!isSerializableMethod(toSerializable))
|
|
108
|
+
return undefined;
|
|
109
|
+
try {
|
|
110
|
+
const data = toSerializable.call(error);
|
|
111
|
+
return isRecord(data) ? data : undefined;
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
return undefined;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
function remoteSerializableErrorType(serializable) {
|
|
118
|
+
const remoteError = safeProperty(serializable, "remoteError");
|
|
119
|
+
if (!isRecord(remoteError))
|
|
120
|
+
return undefined;
|
|
121
|
+
return objectStringProperty(remoteError, "type");
|
|
122
|
+
}
|
|
123
|
+
function authReason(serializable) {
|
|
124
|
+
const type = safeProperty(serializable, "type");
|
|
125
|
+
if (type === "AuthError") {
|
|
126
|
+
return boundedAuthReason(safeProperty(serializable, "reason"));
|
|
127
|
+
}
|
|
128
|
+
if (type === "RemoteError") {
|
|
129
|
+
const remoteError = safeProperty(serializable, "remoteError");
|
|
130
|
+
if (isRecord(remoteError) && objectStringProperty(remoteError, "type") ===
|
|
131
|
+
"AuthError") {
|
|
132
|
+
return boundedAuthReason(safeProperty(remoteError, "reason"));
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
return undefined;
|
|
136
|
+
}
|
|
137
|
+
function boundedAuthReason(value) {
|
|
138
|
+
const sanitized = lowCardinalityValue(value);
|
|
139
|
+
if (!sanitized || !AUTH_REASONS.has(sanitized))
|
|
140
|
+
return undefined;
|
|
141
|
+
return sanitized;
|
|
142
|
+
}
|
|
143
|
+
function isRecord(value) {
|
|
144
|
+
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
145
|
+
}
|
|
146
|
+
function isSerializableMethod(value) {
|
|
147
|
+
return typeof value === "function";
|
|
148
|
+
}
|
|
149
|
+
function safeProperty(value, key) {
|
|
150
|
+
if (!isRecord(value))
|
|
151
|
+
return undefined;
|
|
152
|
+
try {
|
|
153
|
+
return value[key];
|
|
154
|
+
}
|
|
155
|
+
catch {
|
|
156
|
+
return undefined;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
function objectStringProperty(value, key) {
|
|
160
|
+
return lowCardinalityValue(safeProperty(value, key));
|
|
161
|
+
}
|
|
162
|
+
function setLowCardinalityAttribute(attributes, key, value) {
|
|
163
|
+
const sanitized = lowCardinalityValue(value);
|
|
164
|
+
if (sanitized)
|
|
165
|
+
attributes[key] = sanitized;
|
|
166
|
+
}
|
|
167
|
+
function lowCardinalityValue(value) {
|
|
168
|
+
if (typeof value !== "string")
|
|
169
|
+
return undefined;
|
|
170
|
+
const trimmed = value.trim();
|
|
171
|
+
if (trimmed.length === 0 ||
|
|
172
|
+
trimmed.length > MAX_ATTRIBUTE_LENGTH ||
|
|
173
|
+
!LOW_CARDINALITY_PATTERN.test(trimmed) ||
|
|
174
|
+
UUID_PATTERN.test(trimmed) ||
|
|
175
|
+
ULID_PATTERN.test(trimmed) ||
|
|
176
|
+
LONG_HEX_SEGMENT_PATTERN.test(trimmed) ||
|
|
177
|
+
TRELLIS_SUBJECT_PREFIX_PATTERN.test(trimmed)) {
|
|
178
|
+
return undefined;
|
|
179
|
+
}
|
|
180
|
+
return trimmed;
|
|
181
|
+
}
|
package/esm/telemetry/mod.d.ts
CHANGED
|
@@ -3,6 +3,9 @@ export { createMapCarrier, extractTraceContext, injectTraceContext, } from "./ca
|
|
|
3
3
|
export type { Context, Span } from "./core.js";
|
|
4
4
|
export { context, getActiveSpan, getTracer, SpanKind, SpanStatusCode, trace, withSpan, withSpanAsync, } from "./core.js";
|
|
5
5
|
export { getEnv } from "./env.js";
|
|
6
|
+
export { initTelemetry } from "./init.js";
|
|
7
|
+
export { buildTrellisErrorMetricAttributes, getTrellisMeter, recordTrellisError, } from "./metrics.js";
|
|
8
|
+
export type { TrellisErrorMetricAttributes } from "./metrics.js";
|
|
6
9
|
export type { NatsHeadersLike } from "./nats.js";
|
|
7
10
|
export { createNatsHeaderCarrier } from "./nats.js";
|
|
8
11
|
export { configureErrorTraceId } from "./result.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/telemetry/mod.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EACL,OAAO,EACP,aAAa,EACb,SAAS,EACT,QAAQ,EACR,cAAc,EACd,KAAK,EACL,QAAQ,EACR,aAAa,GACd,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,eAAe,GAChB,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/telemetry/mod.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EACL,OAAO,EACP,aAAa,EACb,SAAS,EACT,QAAQ,EACR,cAAc,EACd,KAAK,EACL,QAAQ,EACR,aAAa,GACd,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EACL,iCAAiC,EACjC,eAAe,EACf,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AACjE,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,eAAe,GAChB,MAAM,cAAc,CAAC"}
|
package/esm/telemetry/mod.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
export { createMapCarrier, extractTraceContext, injectTraceContext, } from "./carrier.js";
|
|
2
2
|
export { context, getActiveSpan, getTracer, SpanKind, SpanStatusCode, trace, withSpan, withSpanAsync, } from "./core.js";
|
|
3
3
|
export { getEnv } from "./env.js";
|
|
4
|
+
export { initTelemetry } from "./init.js";
|
|
5
|
+
export { buildTrellisErrorMetricAttributes, getTrellisMeter, recordTrellisError, } from "./metrics.js";
|
|
4
6
|
export { createNatsHeaderCarrier } from "./nats.js";
|
|
5
7
|
export { configureErrorTraceId } from "./result.js";
|
|
6
8
|
export { getTrellisTracer, startClientSpan, startServerSpan, } from "./trellis.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/telemetry/runtime.ts"],"names":[],"mappings":"AAmNA,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAM9D"}
|