@runsignal/node 0.2.0 → 0.3.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 +5 -1
- package/dist/registry.d.ts +9 -4
- package/dist/registry.js +67 -9
- package/dist/registry.js.map +1 -1
- package/dist/telemetry.d.ts +2 -1
- package/dist/telemetry.js +2 -1
- package/dist/telemetry.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -52,10 +52,14 @@ OpenTelemetry SDK starts. For an explicit provider, use `new WorkloadRegistry({
|
|
|
52
52
|
| Call | Records |
|
|
53
53
|
|---|---|
|
|
54
54
|
| `w.run(fn, { signal })` | One run. It succeeds when `fn` resolves, is cancelled when `signal` was aborted, and fails otherwise. The run's span is active inside `fn` (with a context manager, which `NodeSDK` registers). |
|
|
55
|
-
| `const run = w.start()` then `run.succeed()` / `fail(err)` / `failCode(code, msg)` / `cancel()` | A run ended by hand. Later calls are ignored. |
|
|
55
|
+
| `const run = w.start()` then `run.succeed()` / `fail(err)` / `failCode(code, msg)` / `cancel()` | A run ended by hand. Later calls are ignored. A run that is never ended stays in progress, so it opens the `hung` alert once it runs past `maxDuration`. |
|
|
56
56
|
| `w.processed(n)` / `w.itemFailed(n)` | Items handled. |
|
|
57
57
|
| `w.beat()` | A heartbeat from a long-running loop. |
|
|
58
58
|
|
|
59
|
+
While a run is in progress, the `runsignal.workload.active_run_age` gauge reports how long the oldest unfinished
|
|
60
|
+
run has been running (0 when none is), so a run that hangs is alerted on while it is still hanging, not only
|
|
61
|
+
when it finishes. It is reported for workloads that have `maxDuration` or have started a run.
|
|
62
|
+
|
|
59
63
|
`error.type` is the error's `errorType` property if it has one, then its `code` if that is a string (such as
|
|
60
64
|
`ECONNREFUSED`), then its class name.
|
|
61
65
|
|
package/dist/registry.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export type Duration = number | string;
|
|
|
11
11
|
export interface WorkloadOptions {
|
|
12
12
|
/** Cron expression for when the workload should run. Produces the missed alert. */
|
|
13
13
|
schedule?: string;
|
|
14
|
-
/** Longest acceptable run. Produces the overrun alert. */
|
|
14
|
+
/** Longest acceptable run. Produces the overrun alert (a finished run took longer) and the hung alert (an unfinished run has been running longer). */
|
|
15
15
|
maxDuration?: Duration;
|
|
16
16
|
/** Longest acceptable gap between heartbeats. Produces the stalled alert. */
|
|
17
17
|
expectEvery?: Duration;
|
|
@@ -119,7 +119,9 @@ export declare class Workload {
|
|
|
119
119
|
constructor(registry: WorkloadRegistry, name: string, expectations: Expectations);
|
|
120
120
|
/**
|
|
121
121
|
* Starts a run. End it with exactly one call to `succeed`, `fail`, `failCode` or `cancel`; later calls are
|
|
122
|
-
* ignored.
|
|
122
|
+
* ignored. A run that is never ended stays in progress: it reports a growing `active_run_age`, which opens the
|
|
123
|
+
* hung alert once it passes `maxDuration`. Prefer `run`, which ends the run for you and makes the run's span
|
|
124
|
+
* active for `fn`.
|
|
123
125
|
*/
|
|
124
126
|
start(): Run;
|
|
125
127
|
/**
|
|
@@ -136,20 +138,23 @@ export declare class Workload {
|
|
|
136
138
|
/** Records a heartbeat: the workload is alive and making progress. */
|
|
137
139
|
beat(): void;
|
|
138
140
|
/** @internal */
|
|
139
|
-
complete(start: number, span: Span | undefined, outcome: Outcome, errorType?: string, error?: unknown, description?: string): void;
|
|
141
|
+
complete(start: number, slot: number, span: Span | undefined, outcome: Outcome, errorType?: string, error?: unknown, description?: string): void;
|
|
140
142
|
/** @internal */
|
|
141
143
|
secondsSinceSuccess(now: number): number | undefined;
|
|
142
144
|
/** @internal */
|
|
143
145
|
secondsSinceHeartbeat(now: number): number | undefined;
|
|
146
|
+
/** @internal */
|
|
147
|
+
activeRunAge(now: number): number | undefined;
|
|
144
148
|
}
|
|
145
149
|
/** One run of a Workload, started with `Workload.start`. */
|
|
146
150
|
export declare class Run {
|
|
147
151
|
#private;
|
|
148
152
|
readonly workload: Workload;
|
|
149
153
|
private readonly started;
|
|
154
|
+
private readonly slot;
|
|
150
155
|
readonly span: Span | undefined;
|
|
151
156
|
/** @internal */
|
|
152
|
-
constructor(workload: Workload, started: number, span: Span | undefined);
|
|
157
|
+
constructor(workload: Workload, started: number, slot: number, span: Span | undefined);
|
|
153
158
|
/** Milliseconds since the run started. */
|
|
154
159
|
get elapsedMs(): number;
|
|
155
160
|
/** Ends the run as successful. */
|
package/dist/registry.js
CHANGED
|
@@ -75,6 +75,10 @@ export class WorkloadRegistry {
|
|
|
75
75
|
unit: 's',
|
|
76
76
|
description: 'Seconds since the last heartbeat of a workload, or since it was registered.',
|
|
77
77
|
});
|
|
78
|
+
const activeRunAge = meter.createObservableGauge(Metrics.activeRunAge, {
|
|
79
|
+
unit: 's',
|
|
80
|
+
description: 'Seconds the oldest unfinished run of a workload has been running, or 0 while none is.',
|
|
81
|
+
});
|
|
78
82
|
meter.addBatchObservableCallback((observer) => {
|
|
79
83
|
const now = performance.now();
|
|
80
84
|
for (const workload of this.#workloads.values()) {
|
|
@@ -84,8 +88,11 @@ export class WorkloadRegistry {
|
|
|
84
88
|
const heartbeat = workload.secondsSinceHeartbeat(now);
|
|
85
89
|
if (heartbeat !== undefined)
|
|
86
90
|
observer.observe(sinceHeartbeat, heartbeat, workload.nameAttributes);
|
|
91
|
+
const active = workload.activeRunAge(now);
|
|
92
|
+
if (active !== undefined)
|
|
93
|
+
observer.observe(activeRunAge, active, workload.nameAttributes);
|
|
87
94
|
}
|
|
88
|
-
}, [sinceSuccess, sinceHeartbeat]);
|
|
95
|
+
}, [sinceSuccess, sinceHeartbeat, activeRunAge]);
|
|
89
96
|
return {
|
|
90
97
|
provider,
|
|
91
98
|
runs: meter.createCounter(Metrics.runs, { unit: '{run}', description: 'Completed runs of a workload.' }),
|
|
@@ -125,6 +132,10 @@ export class WorkloadRegistry {
|
|
|
125
132
|
validateName(name);
|
|
126
133
|
const created = new Workload(this, name, toExpectations(options));
|
|
127
134
|
this.#workloads.set(name, created);
|
|
135
|
+
// Moves the gauges to the global meter provider if it has changed since the registry was created, for example
|
|
136
|
+
// when the default registry was created by an import before the SDK started. Otherwise a workload that never
|
|
137
|
+
// runs would report nothing, and its missed and hung alerts would never open.
|
|
138
|
+
void this.instruments;
|
|
128
139
|
return created;
|
|
129
140
|
}
|
|
130
141
|
/** Every workload created so far, sorted by name. */
|
|
@@ -166,6 +177,9 @@ export class WorkloadRegistry {
|
|
|
166
177
|
return path;
|
|
167
178
|
}
|
|
168
179
|
}
|
|
180
|
+
// How many runs in progress a workload tracks for active_run_age. Runs started while every slot is taken are not
|
|
181
|
+
// tracked, so with more concurrent runs the reported age is a lower bound.
|
|
182
|
+
const ACTIVE_RUN_SLOTS = 64;
|
|
169
183
|
/**
|
|
170
184
|
* A unit of background work, such as a scheduled job, a queue consumer or a sync loop. Get one from a
|
|
171
185
|
* WorkloadRegistry once and keep it.
|
|
@@ -184,6 +198,9 @@ export class Workload {
|
|
|
184
198
|
#lastHeartbeat;
|
|
185
199
|
#hasStarted = false;
|
|
186
200
|
#hasBeaten = false;
|
|
201
|
+
// Start timestamps of the runs in progress, 0 for a free slot, allocated on the first run. A run claims a slot
|
|
202
|
+
// when it starts and frees it when it ends, so the oldest one gives active_run_age.
|
|
203
|
+
#activeRuns;
|
|
187
204
|
/** @internal */
|
|
188
205
|
constructor(registry, name, expectations) {
|
|
189
206
|
this.name = name;
|
|
@@ -201,12 +218,33 @@ export class Workload {
|
|
|
201
218
|
}
|
|
202
219
|
/**
|
|
203
220
|
* Starts a run. End it with exactly one call to `succeed`, `fail`, `failCode` or `cancel`; later calls are
|
|
204
|
-
* ignored.
|
|
221
|
+
* ignored. A run that is never ended stays in progress: it reports a growing `active_run_age`, which opens the
|
|
222
|
+
* hung alert once it passes `maxDuration`. Prefer `run`, which ends the run for you and makes the run's span
|
|
223
|
+
* active for `fn`.
|
|
205
224
|
*/
|
|
206
225
|
start() {
|
|
207
226
|
this.#hasStarted = true;
|
|
208
227
|
const span = this.#registry.tracer?.startSpan(this.name, { kind: SpanKind.INTERNAL, attributes: this.nameAttributes });
|
|
209
|
-
|
|
228
|
+
const started = performance.now();
|
|
229
|
+
return new Run(this, started, this.#trackStart(started), span);
|
|
230
|
+
}
|
|
231
|
+
// Returns the claimed slot, or -1 when every slot is taken; such a run is not tracked.
|
|
232
|
+
#trackStart(started) {
|
|
233
|
+
const runs = (this.#activeRuns ??= new Float64Array(ACTIVE_RUN_SLOTS));
|
|
234
|
+
for (let i = 0; i < runs.length; i++) {
|
|
235
|
+
if (runs[i] === 0) {
|
|
236
|
+
// performance.now() is positive after startup; guard 0 so a run can never look like a free slot.
|
|
237
|
+
runs[i] = started || Number.MIN_VALUE;
|
|
238
|
+
return i;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
return -1;
|
|
242
|
+
}
|
|
243
|
+
// Frees the run's slot only if it still holds this run, so ending a run twice cannot end a newer one.
|
|
244
|
+
#trackEnd(started, slot) {
|
|
245
|
+
const runs = this.#activeRuns;
|
|
246
|
+
if (slot >= 0 && runs !== undefined && runs[slot] === (started || Number.MIN_VALUE))
|
|
247
|
+
runs[slot] = 0;
|
|
210
248
|
}
|
|
211
249
|
/**
|
|
212
250
|
* Runs `fn` as one run of the workload: it succeeds when `fn` resolves, is cancelled when `fn` rejects after
|
|
@@ -245,7 +283,8 @@ export class Workload {
|
|
|
245
283
|
this.#registry.instruments.heartbeats.add(1, this.nameAttributes);
|
|
246
284
|
}
|
|
247
285
|
/** @internal */
|
|
248
|
-
complete(start, span, outcome, errorType, error, description) {
|
|
286
|
+
complete(start, slot, span, outcome, errorType, error, description) {
|
|
287
|
+
this.#trackEnd(start, slot);
|
|
249
288
|
const now = performance.now();
|
|
250
289
|
const instruments = this.#registry.instruments;
|
|
251
290
|
if (errorType === undefined) {
|
|
@@ -284,17 +323,36 @@ export class Workload {
|
|
|
284
323
|
secondsSinceHeartbeat(now) {
|
|
285
324
|
return this.#hasBeaten || this.expectations.expectEveryMs !== undefined ? (now - this.#lastHeartbeat) / 1000 : undefined;
|
|
286
325
|
}
|
|
326
|
+
// Seconds the oldest run in progress has been running, or 0. Reported for workloads that have a maximum
|
|
327
|
+
// duration or have run, so the hung alert has a value to evaluate, and closes, while nothing is running.
|
|
328
|
+
/** @internal */
|
|
329
|
+
activeRunAge(now) {
|
|
330
|
+
if (!this.#hasStarted && this.expectations.maxDurationMs === undefined)
|
|
331
|
+
return undefined;
|
|
332
|
+
const runs = this.#activeRuns;
|
|
333
|
+
if (runs === undefined)
|
|
334
|
+
return 0;
|
|
335
|
+
let oldest = Infinity;
|
|
336
|
+
for (let i = 0; i < runs.length; i++) {
|
|
337
|
+
const started = runs[i];
|
|
338
|
+
if (started !== 0 && started < oldest)
|
|
339
|
+
oldest = started;
|
|
340
|
+
}
|
|
341
|
+
return oldest === Infinity ? 0 : Math.max(0, (now - oldest) / 1000);
|
|
342
|
+
}
|
|
287
343
|
}
|
|
288
344
|
/** One run of a Workload, started with `Workload.start`. */
|
|
289
345
|
export class Run {
|
|
290
346
|
workload;
|
|
291
347
|
started;
|
|
348
|
+
slot;
|
|
292
349
|
span;
|
|
293
350
|
#ended = false;
|
|
294
351
|
/** @internal */
|
|
295
|
-
constructor(workload, started, span) {
|
|
352
|
+
constructor(workload, started, slot, span) {
|
|
296
353
|
this.workload = workload;
|
|
297
354
|
this.started = started;
|
|
355
|
+
this.slot = slot;
|
|
298
356
|
this.span = span;
|
|
299
357
|
}
|
|
300
358
|
/** Milliseconds since the run started. */
|
|
@@ -304,7 +362,7 @@ export class Run {
|
|
|
304
362
|
/** Ends the run as successful. */
|
|
305
363
|
succeed() {
|
|
306
364
|
if (this.#end())
|
|
307
|
-
this.workload.complete(this.started, this.span, 'success');
|
|
365
|
+
this.workload.complete(this.started, this.slot, this.span, 'success');
|
|
308
366
|
}
|
|
309
367
|
/**
|
|
310
368
|
* Ends the run as failed because of `error`. Its `error.type` is the error's `errorType` if it has one, then
|
|
@@ -312,7 +370,7 @@ export class Run {
|
|
|
312
370
|
*/
|
|
313
371
|
fail(error) {
|
|
314
372
|
if (this.#end())
|
|
315
|
-
this.workload.complete(this.started, this.span, 'failure', errorTypeOf(error), error, error instanceof Error ? error.message : String(error));
|
|
373
|
+
this.workload.complete(this.started, this.slot, this.span, 'failure', errorTypeOf(error), error, error instanceof Error ? error.message : String(error));
|
|
316
374
|
}
|
|
317
375
|
/**
|
|
318
376
|
* Ends the run as failed without an error, for example when an expected input file is missing. `code` must be
|
|
@@ -320,12 +378,12 @@ export class Run {
|
|
|
320
378
|
*/
|
|
321
379
|
failCode(code, description) {
|
|
322
380
|
if (this.#end())
|
|
323
|
-
this.workload.complete(this.started, this.span, 'failure', code || 'unknown', undefined, description);
|
|
381
|
+
this.workload.complete(this.started, this.slot, this.span, 'failure', code || 'unknown', undefined, description);
|
|
324
382
|
}
|
|
325
383
|
/** Ends the run as cancelled, for example on shutdown. Cancelled runs do not count as failures. */
|
|
326
384
|
cancel() {
|
|
327
385
|
if (this.#end())
|
|
328
|
-
this.workload.complete(this.started, this.span, 'cancelled');
|
|
386
|
+
this.workload.complete(this.started, this.slot, this.span, 'cancelled');
|
|
329
387
|
}
|
|
330
388
|
#end() {
|
|
331
389
|
if (this.#ended)
|
package/dist/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/telemetry.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* SDK (see spec/README.md in the repository), so one set of alert rules covers every language.
|
|
4
4
|
*/
|
|
5
5
|
export declare const SCOPE_NAME = "RunSignal";
|
|
6
|
-
export declare const VERSION = "0.
|
|
6
|
+
export declare const VERSION = "0.3.0";
|
|
7
7
|
export declare const Metrics: {
|
|
8
8
|
readonly runs: 'runsignal.workload.runs';
|
|
9
9
|
readonly duration: 'runsignal.workload.duration';
|
|
@@ -11,6 +11,7 @@ export declare const Metrics: {
|
|
|
11
11
|
readonly heartbeats: 'runsignal.workload.heartbeats';
|
|
12
12
|
readonly sinceSuccess: 'runsignal.workload.since_success';
|
|
13
13
|
readonly sinceHeartbeat: 'runsignal.workload.since_heartbeat';
|
|
14
|
+
readonly activeRunAge: 'runsignal.workload.active_run_age';
|
|
14
15
|
};
|
|
15
16
|
export declare const Attributes: {
|
|
16
17
|
readonly workload: 'runsignal.workload';
|
package/dist/telemetry.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* SDK (see spec/README.md in the repository), so one set of alert rules covers every language.
|
|
4
4
|
*/
|
|
5
5
|
export const SCOPE_NAME = 'RunSignal';
|
|
6
|
-
export const VERSION = '0.
|
|
6
|
+
export const VERSION = '0.3.0';
|
|
7
7
|
export const Metrics = {
|
|
8
8
|
runs: 'runsignal.workload.runs',
|
|
9
9
|
duration: 'runsignal.workload.duration',
|
|
@@ -11,6 +11,7 @@ export const Metrics = {
|
|
|
11
11
|
heartbeats: 'runsignal.workload.heartbeats',
|
|
12
12
|
sinceSuccess: 'runsignal.workload.since_success',
|
|
13
13
|
sinceHeartbeat: 'runsignal.workload.since_heartbeat',
|
|
14
|
+
activeRunAge: 'runsignal.workload.active_run_age',
|
|
14
15
|
};
|
|
15
16
|
export const Attributes = {
|
|
16
17
|
workload: 'runsignal.workload',
|
package/dist/telemetry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,WAAW,CAAC;AACtC,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,IAAI,EAAE,yBAAyB;IAC/B,QAAQ,EAAE,6BAA6B;IACvC,KAAK,EAAE,0BAA0B;IACjC,UAAU,EAAE,+BAA+B;IAC3C,YAAY,EAAE,kCAAkC;IAChD,cAAc,EAAE,oCAAoC;
|
|
1
|
+
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,WAAW,CAAC;AACtC,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,IAAI,EAAE,yBAAyB;IAC/B,QAAQ,EAAE,6BAA6B;IACvC,KAAK,EAAE,0BAA0B;IACjC,UAAU,EAAE,+BAA+B;IAC3C,YAAY,EAAE,kCAAkC;IAChD,cAAc,EAAE,oCAAoC;IACpD,YAAY,EAAE,mCAAmC;CACzC,CAAC;AAEX,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,QAAQ,EAAE,oBAAoB;IAC9B,OAAO,EAAE,mBAAmB;IAC5B,UAAU,EAAE,uBAAuB;IACnC,SAAS,EAAE,YAAY;CACf,CAAC;AAEX;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAsB;IACjD,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK;CAC3F,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@runsignal/node",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Cron job and background job monitoring for Node.js with OpenTelemetry: alert when a scheduled job is missed, fails, overruns or stalls, or a BullMQ queue stops processing. Works with node-cron, croner, cron, node-schedule and BullMQ; alerts for New Relic, Prometheus and Grafana.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Gokhan Ertogan",
|