@flowrensic/node 0.6.17 → 0.6.18

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.
@@ -1,14 +1,19 @@
1
1
  import { NativeConnection } from '@temporalio/worker';
2
2
  import { type AttemptSink } from './sink.js';
3
3
  /**
4
- * What the worker does when the handshake gets no answer. fail throws at once.
5
- * retry asks again, attempts times in all with delayMs between two asks, and
6
- * then throws the way fail does. give-up-quietly starts the worker with
7
- * nothing forwarded on a timer. forward-anyway starts it as if it was told to
8
- * forward when it has a metrics address and an env-instance-id, at the default
9
- * interval.
4
+ * What the worker does when the handshake gets no answer. keep-trying starts
5
+ * the worker at once and asks again in the background, with delayMs between
6
+ * two asks, 5 seconds when left out, and once answered does what the answer
7
+ * says. fail throws at once. retry asks again, attempts times in all with
8
+ * delayMs between two asks, and then throws the way fail does. give-up-quietly
9
+ * starts the worker with nothing forwarded on a timer. forward-anyway starts it
10
+ * as if it was told to forward when it has a metrics address and an
11
+ * env-instance-id, at the default interval.
10
12
  */
11
13
  export type NoAnswerStrategy = {
14
+ readonly strategy: 'keep-trying';
15
+ readonly delayMs?: number;
16
+ } | {
12
17
  readonly strategy: 'fail';
13
18
  } | {
14
19
  readonly strategy: 'retry';
@@ -57,7 +62,7 @@ export interface EnvInstanceTelemetryOptions {
57
62
  */
58
63
  connection?: NativeConnection;
59
64
  namespace: string;
60
- /** Left out, fail. */
65
+ /** Left out, keep-trying. */
61
66
  noAnswer?: NoAnswerStrategy;
62
67
  /**
63
68
  * How long one call to Flowrensic may take before it is given up, in
@@ -67,6 +72,13 @@ export interface EnvInstanceTelemetryOptions {
67
72
  sendTimeoutMs?: number;
68
73
  }
69
74
  export interface EnvInstanceTelemetry {
75
+ /** Whether Flowrensic answered the handshake, at start or later in the background. */
76
+ readonly answered: boolean;
77
+ /**
78
+ * Settles true once Flowrensic answers, and false when it refuses in the
79
+ * background, the strategy runs with no answer, or shutdown comes first.
80
+ */
81
+ readonly whenAnswered: Promise<boolean>;
70
82
  /** Whether the handshake told this worker to collect the engine's metrics. */
71
83
  readonly forwarding: boolean;
72
84
  /** The interval the answer carried, in seconds. */
@@ -87,7 +99,8 @@ export interface EnvInstanceTelemetry {
87
99
  /**
88
100
  * Makes one handshake with the env name and the env-instance-id. When it goes
89
101
  * unanswered it does what the strategy says. The answer says whether this
90
- * worker scrapes the engine and how often.
102
+ * worker scrapes the engine and how often. Until an answer comes, nothing is
103
+ * sent on a timer.
91
104
  *
92
105
  * On that interval it forwards the raw exposition when it was told to, and the
93
106
  * history of every run the interceptor reported, read over gRPC.
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAKtD,OAAO,EAAqB,KAAK,WAAW,EAAmB,MAAM,WAAW,CAAC;AAEjF;;;;;;;GAOG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnF;IAAE,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAA;CAAE,GACxC;IAAE,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAQ5C,MAAM,WAAW,2BAA2B;IAC1C,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,SAAS,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,+GAA+G;IAC/G,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,8EAA8E;IAC9E,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,mDAAmD;IACnD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,oDAAoD;IACpD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B;;;OAGG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AA2CD;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,oBAAoB,CAAC,CAuK/B"}
1
+ {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAKtD,OAAO,EAAqB,KAAK,WAAW,EAAmB,MAAM,WAAW,CAAC;AAEjF;;;;;;;;;GASG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC/D;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnF;IAAE,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAA;CAAE,GACxC;IAAE,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAc5C,MAAM,WAAW,2BAA2B;IAC1C,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,SAAS,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,+GAA+G;IAC/G,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,8EAA8E;IAC9E,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,mDAAmD;IACnD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,oDAAoD;IACpD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B;;;OAGG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAgDD;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,oBAAoB,CAAC,CAsO/B"}
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.startEnvInstanceTelemetry = startEnvInstanceTelemetry;
7
7
  const node_os_1 = require("node:os");
8
+ const promises_1 = require("node:timers/promises");
8
9
  const connect_1 = require("@connectrpc/connect");
9
10
  // The package is CommonJS, so a named import fails under Node's own ESM.
10
11
  const proto_1 = __importDefault(require("@temporalio/proto"));
@@ -15,6 +16,10 @@ const sink_js_1 = require("./sink.js");
15
16
  const defaultIntervalSeconds = 5;
16
17
  /** How long one call to Flowrensic may take when the options carry none, in milliseconds. */
17
18
  const defaultSendTimeoutMs = 5000;
19
+ /** The pause between two asks of keep-trying when it carries none, in milliseconds. */
20
+ const defaultKeepTryingDelayMs = 5000;
21
+ /** The most runs the worker holds to send the histories of. Past it the oldest is dropped. */
22
+ const seenCap = 10_000;
18
23
  /** Whether the event ends the run, so nothing is added to its history after it. */
19
24
  function closesTheRun(event) {
20
25
  if (event === undefined)
@@ -53,10 +58,15 @@ async function pause(ms) {
53
58
  setTimeout(resolve, ms);
54
59
  });
55
60
  }
61
+ /** A pause that ends early when the signal is aborted, and holds no process open. */
62
+ async function pauseUnless(ms, signal) {
63
+ await (0, promises_1.setTimeout)(ms, undefined, { signal, ref: false }).catch(() => undefined);
64
+ }
56
65
  /**
57
66
  * Makes one handshake with the env name and the env-instance-id. When it goes
58
67
  * unanswered it does what the strategy says. The answer says whether this
59
- * worker scrapes the engine and how often.
68
+ * worker scrapes the engine and how often. Until an answer comes, nothing is
69
+ * sent on a timer.
60
70
  *
61
71
  * On that interval it forwards the raw exposition when it was told to, and the
62
72
  * history of every run the interceptor reported, read over gRPC.
@@ -71,12 +81,13 @@ async function startEnvInstanceTelemetry(options) {
71
81
  const timeoutMs = options.sendTimeoutMs ?? defaultSendTimeoutMs;
72
82
  const keyed = options.envKey === undefined ? {} : { envKey: options.envKey };
73
83
  const client = (0, client_js_1.createFlowrensicClient)(baseUrl, keyed);
74
- const strategy = options.noAnswer ?? { strategy: 'fail' };
84
+ const strategy = options.noAnswer ?? { strategy: 'keep-trying' };
75
85
  const attempts = strategy.strategy === 'retry' ? Math.max(1, strategy.attempts) : 1;
86
+ const ask = async (signal) => await client.ingest.envInstanceHandshake({ deployEnv, envInstanceId, metricsAddress, workerId, version }, { timeoutMs, ...(signal === undefined ? {} : { signal }) });
76
87
  const handshake = async () => {
77
88
  for (let attempt = 1;; attempt += 1) {
78
89
  try {
79
- return await client.ingest.envInstanceHandshake({ deployEnv, envInstanceId, metricsAddress, workerId, version }, { timeoutMs });
90
+ return await ask();
80
91
  }
81
92
  catch (error) {
82
93
  if (strategy.strategy !== 'retry' || attempt >= attempts || !noAnswer(error))
@@ -85,17 +96,23 @@ async function startEnvInstanceTelemetry(options) {
85
96
  }
86
97
  }
87
98
  };
88
- let forwarding;
89
- let intervalSeconds;
99
+ let answered = false;
100
+ let forwarding = false;
101
+ let intervalSeconds = 0;
90
102
  let sendingHistories = true;
103
+ let unanswered = false;
91
104
  try {
92
105
  const answer = await handshake();
106
+ answered = true;
93
107
  forwarding = answer.forward;
94
108
  intervalSeconds = answer.intervalSeconds;
95
109
  sendingHistories = !answer.skipHistories;
96
110
  }
97
111
  catch (error) {
98
- if (strategy.strategy === 'give-up-quietly' && noAnswer(error)) {
112
+ if (strategy.strategy === 'keep-trying' && noAnswer(error)) {
113
+ unanswered = true;
114
+ }
115
+ else if (strategy.strategy === 'give-up-quietly' && noAnswer(error)) {
99
116
  forwarding = false;
100
117
  intervalSeconds = 0;
101
118
  }
@@ -116,6 +133,11 @@ async function startEnvInstanceTelemetry(options) {
116
133
  record(attempt) {
117
134
  if (sendingHistories && attempt.runKey !== '' && attempt.workflowExecutionId !== '') {
118
135
  seen.set(attempt.runKey, attempt.workflowExecutionId);
136
+ if (seen.size > seenCap) {
137
+ const oldest = seen.keys().next().value;
138
+ if (oldest !== undefined)
139
+ seen.delete(oldest);
140
+ }
119
141
  }
120
142
  inner.record(attempt);
121
143
  },
@@ -204,14 +226,64 @@ async function startEnvInstanceTelemetry(options) {
204
226
  });
205
227
  working = { done, stop };
206
228
  };
207
- const timer = intervalSeconds > 0 ? setInterval(tick, intervalSeconds * 1000) : undefined;
208
- timer?.unref();
229
+ let timer;
230
+ const startTimer = () => {
231
+ if (intervalSeconds <= 0)
232
+ return;
233
+ timer = setInterval(tick, intervalSeconds * 1000);
234
+ timer.unref();
235
+ };
236
+ startTimer();
237
+ // keep-trying asks again in the background until an answer, a refusal or
238
+ // shutdown, and then starts as if the answer had come at start.
239
+ const stopAsking = new AbortController();
240
+ const stopped = () => stopAsking.signal.aborted;
241
+ const whenAnswered = unanswered
242
+ ? (async () => {
243
+ const delayMs = strategy.strategy === 'keep-trying' ? (strategy.delayMs ?? defaultKeepTryingDelayMs) : 0;
244
+ for (;;) {
245
+ await pauseUnless(delayMs, stopAsking.signal);
246
+ if (stopped())
247
+ return false;
248
+ try {
249
+ const answer = await ask(stopAsking.signal);
250
+ if (stopped())
251
+ return false;
252
+ answered = true;
253
+ forwarding = answer.forward;
254
+ intervalSeconds = answer.intervalSeconds;
255
+ sendingHistories = !answer.skipHistories;
256
+ if (!sendingHistories)
257
+ seen.clear();
258
+ startTimer();
259
+ tick();
260
+ return true;
261
+ }
262
+ catch (error) {
263
+ if (stopped() || !noAnswer(error))
264
+ return false;
265
+ }
266
+ }
267
+ })()
268
+ : Promise.resolve(answered);
209
269
  return {
210
- forwarding,
211
- intervalSeconds,
212
- sendingHistories,
270
+ get answered() {
271
+ return answered;
272
+ },
273
+ whenAnswered,
274
+ get forwarding() {
275
+ return forwarding;
276
+ },
277
+ get intervalSeconds() {
278
+ return intervalSeconds;
279
+ },
280
+ get sendingHistories() {
281
+ return sendingHistories;
282
+ },
213
283
  sink,
214
284
  async shutdown() {
285
+ stopAsking.abort();
286
+ await whenAnswered;
215
287
  if (timer !== undefined)
216
288
  clearInterval(timer);
217
289
  // The tick at work is cut short, so the last one starts at once.
@@ -219,11 +291,16 @@ async function startEnvInstanceTelemetry(options) {
219
291
  working.stop.abort();
220
292
  await working.done;
221
293
  }
222
- await collect(new AbortController().signal);
294
+ // keep-trying with no answer has no Flowrensic to hand over to.
295
+ const handOver = answered || !unanswered;
296
+ if (handOver)
297
+ await collect(new AbortController().signal);
223
298
  await sink.close();
224
- await ignoringFailure(async () => {
225
- await client.ingest.envInstanceHandover({ deployEnv, envInstanceId, workerId, version }, { timeoutMs });
226
- });
299
+ if (handOver) {
300
+ await ignoringFailure(async () => {
301
+ await client.ingest.envInstanceHandover({ deployEnv, envInstanceId, workerId, version }, { timeoutMs });
302
+ });
303
+ }
227
304
  if (ownConnection)
228
305
  await connection.close();
229
306
  },
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,19 @@
1
1
  import { NativeConnection } from '@temporalio/worker';
2
2
  import { type AttemptSink } from './sink.js';
3
3
  /**
4
- * What the worker does when the handshake gets no answer. fail throws at once.
5
- * retry asks again, attempts times in all with delayMs between two asks, and
6
- * then throws the way fail does. give-up-quietly starts the worker with
7
- * nothing forwarded on a timer. forward-anyway starts it as if it was told to
8
- * forward when it has a metrics address and an env-instance-id, at the default
9
- * interval.
4
+ * What the worker does when the handshake gets no answer. keep-trying starts
5
+ * the worker at once and asks again in the background, with delayMs between
6
+ * two asks, 5 seconds when left out, and once answered does what the answer
7
+ * says. fail throws at once. retry asks again, attempts times in all with
8
+ * delayMs between two asks, and then throws the way fail does. give-up-quietly
9
+ * starts the worker with nothing forwarded on a timer. forward-anyway starts it
10
+ * as if it was told to forward when it has a metrics address and an
11
+ * env-instance-id, at the default interval.
10
12
  */
11
13
  export type NoAnswerStrategy = {
14
+ readonly strategy: 'keep-trying';
15
+ readonly delayMs?: number;
16
+ } | {
12
17
  readonly strategy: 'fail';
13
18
  } | {
14
19
  readonly strategy: 'retry';
@@ -57,7 +62,7 @@ export interface EnvInstanceTelemetryOptions {
57
62
  */
58
63
  connection?: NativeConnection;
59
64
  namespace: string;
60
- /** Left out, fail. */
65
+ /** Left out, keep-trying. */
61
66
  noAnswer?: NoAnswerStrategy;
62
67
  /**
63
68
  * How long one call to Flowrensic may take before it is given up, in
@@ -67,6 +72,13 @@ export interface EnvInstanceTelemetryOptions {
67
72
  sendTimeoutMs?: number;
68
73
  }
69
74
  export interface EnvInstanceTelemetry {
75
+ /** Whether Flowrensic answered the handshake, at start or later in the background. */
76
+ readonly answered: boolean;
77
+ /**
78
+ * Settles true once Flowrensic answers, and false when it refuses in the
79
+ * background, the strategy runs with no answer, or shutdown comes first.
80
+ */
81
+ readonly whenAnswered: Promise<boolean>;
70
82
  /** Whether the handshake told this worker to collect the engine's metrics. */
71
83
  readonly forwarding: boolean;
72
84
  /** The interval the answer carried, in seconds. */
@@ -87,7 +99,8 @@ export interface EnvInstanceTelemetry {
87
99
  /**
88
100
  * Makes one handshake with the env name and the env-instance-id. When it goes
89
101
  * unanswered it does what the strategy says. The answer says whether this
90
- * worker scrapes the engine and how often.
102
+ * worker scrapes the engine and how often. Until an answer comes, nothing is
103
+ * sent on a timer.
91
104
  *
92
105
  * On that interval it forwards the raw exposition when it was told to, and the
93
106
  * history of every run the interceptor reported, read over gRPC.
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAKtD,OAAO,EAAqB,KAAK,WAAW,EAAmB,MAAM,WAAW,CAAC;AAEjF;;;;;;;GAOG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnF;IAAE,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAA;CAAE,GACxC;IAAE,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAQ5C,MAAM,WAAW,2BAA2B;IAC1C,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,SAAS,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,+GAA+G;IAC/G,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,8EAA8E;IAC9E,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,mDAAmD;IACnD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,oDAAoD;IACpD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B;;;OAGG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AA2CD;;;;;;;GAOG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,oBAAoB,CAAC,CAuK/B"}
1
+ {"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAKtD,OAAO,EAAqB,KAAK,WAAW,EAAmB,MAAM,WAAW,CAAC;AAEjF;;;;;;;;;GASG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC/D;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnF;IAAE,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAA;CAAE,GACxC;IAAE,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAc5C,MAAM,WAAW,2BAA2B;IAC1C,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,gFAAgF;IAChF,SAAS,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,+GAA+G;IAC/G,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,8EAA8E;IAC9E,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,mDAAmD;IACnD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,oDAAoD;IACpD,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B;;;OAGG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAgDD;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,oBAAoB,CAAC,CAsO/B"}
@@ -1,4 +1,5 @@
1
1
  import { hostname } from 'node:os';
2
+ import { setTimeout as delay } from 'node:timers/promises';
2
3
  import { Code, ConnectError } from '@connectrpc/connect';
3
4
  // The package is CommonJS, so a named import fails under Node's own ESM.
4
5
  import protos from '@temporalio/proto';
@@ -9,6 +10,10 @@ import { createAttemptSink } from './sink.js';
9
10
  const defaultIntervalSeconds = 5;
10
11
  /** How long one call to Flowrensic may take when the options carry none, in milliseconds. */
11
12
  const defaultSendTimeoutMs = 5000;
13
+ /** The pause between two asks of keep-trying when it carries none, in milliseconds. */
14
+ const defaultKeepTryingDelayMs = 5000;
15
+ /** The most runs the worker holds to send the histories of. Past it the oldest is dropped. */
16
+ const seenCap = 10_000;
12
17
  /** Whether the event ends the run, so nothing is added to its history after it. */
13
18
  function closesTheRun(event) {
14
19
  if (event === undefined)
@@ -47,10 +52,15 @@ async function pause(ms) {
47
52
  setTimeout(resolve, ms);
48
53
  });
49
54
  }
55
+ /** A pause that ends early when the signal is aborted, and holds no process open. */
56
+ async function pauseUnless(ms, signal) {
57
+ await delay(ms, undefined, { signal, ref: false }).catch(() => undefined);
58
+ }
50
59
  /**
51
60
  * Makes one handshake with the env name and the env-instance-id. When it goes
52
61
  * unanswered it does what the strategy says. The answer says whether this
53
- * worker scrapes the engine and how often.
62
+ * worker scrapes the engine and how often. Until an answer comes, nothing is
63
+ * sent on a timer.
54
64
  *
55
65
  * On that interval it forwards the raw exposition when it was told to, and the
56
66
  * history of every run the interceptor reported, read over gRPC.
@@ -65,12 +75,13 @@ export async function startEnvInstanceTelemetry(options) {
65
75
  const timeoutMs = options.sendTimeoutMs ?? defaultSendTimeoutMs;
66
76
  const keyed = options.envKey === undefined ? {} : { envKey: options.envKey };
67
77
  const client = createFlowrensicClient(baseUrl, keyed);
68
- const strategy = options.noAnswer ?? { strategy: 'fail' };
78
+ const strategy = options.noAnswer ?? { strategy: 'keep-trying' };
69
79
  const attempts = strategy.strategy === 'retry' ? Math.max(1, strategy.attempts) : 1;
80
+ const ask = async (signal) => await client.ingest.envInstanceHandshake({ deployEnv, envInstanceId, metricsAddress, workerId, version }, { timeoutMs, ...(signal === undefined ? {} : { signal }) });
70
81
  const handshake = async () => {
71
82
  for (let attempt = 1;; attempt += 1) {
72
83
  try {
73
- return await client.ingest.envInstanceHandshake({ deployEnv, envInstanceId, metricsAddress, workerId, version }, { timeoutMs });
84
+ return await ask();
74
85
  }
75
86
  catch (error) {
76
87
  if (strategy.strategy !== 'retry' || attempt >= attempts || !noAnswer(error))
@@ -79,17 +90,23 @@ export async function startEnvInstanceTelemetry(options) {
79
90
  }
80
91
  }
81
92
  };
82
- let forwarding;
83
- let intervalSeconds;
93
+ let answered = false;
94
+ let forwarding = false;
95
+ let intervalSeconds = 0;
84
96
  let sendingHistories = true;
97
+ let unanswered = false;
85
98
  try {
86
99
  const answer = await handshake();
100
+ answered = true;
87
101
  forwarding = answer.forward;
88
102
  intervalSeconds = answer.intervalSeconds;
89
103
  sendingHistories = !answer.skipHistories;
90
104
  }
91
105
  catch (error) {
92
- if (strategy.strategy === 'give-up-quietly' && noAnswer(error)) {
106
+ if (strategy.strategy === 'keep-trying' && noAnswer(error)) {
107
+ unanswered = true;
108
+ }
109
+ else if (strategy.strategy === 'give-up-quietly' && noAnswer(error)) {
93
110
  forwarding = false;
94
111
  intervalSeconds = 0;
95
112
  }
@@ -110,6 +127,11 @@ export async function startEnvInstanceTelemetry(options) {
110
127
  record(attempt) {
111
128
  if (sendingHistories && attempt.runKey !== '' && attempt.workflowExecutionId !== '') {
112
129
  seen.set(attempt.runKey, attempt.workflowExecutionId);
130
+ if (seen.size > seenCap) {
131
+ const oldest = seen.keys().next().value;
132
+ if (oldest !== undefined)
133
+ seen.delete(oldest);
134
+ }
113
135
  }
114
136
  inner.record(attempt);
115
137
  },
@@ -198,14 +220,64 @@ export async function startEnvInstanceTelemetry(options) {
198
220
  });
199
221
  working = { done, stop };
200
222
  };
201
- const timer = intervalSeconds > 0 ? setInterval(tick, intervalSeconds * 1000) : undefined;
202
- timer?.unref();
223
+ let timer;
224
+ const startTimer = () => {
225
+ if (intervalSeconds <= 0)
226
+ return;
227
+ timer = setInterval(tick, intervalSeconds * 1000);
228
+ timer.unref();
229
+ };
230
+ startTimer();
231
+ // keep-trying asks again in the background until an answer, a refusal or
232
+ // shutdown, and then starts as if the answer had come at start.
233
+ const stopAsking = new AbortController();
234
+ const stopped = () => stopAsking.signal.aborted;
235
+ const whenAnswered = unanswered
236
+ ? (async () => {
237
+ const delayMs = strategy.strategy === 'keep-trying' ? (strategy.delayMs ?? defaultKeepTryingDelayMs) : 0;
238
+ for (;;) {
239
+ await pauseUnless(delayMs, stopAsking.signal);
240
+ if (stopped())
241
+ return false;
242
+ try {
243
+ const answer = await ask(stopAsking.signal);
244
+ if (stopped())
245
+ return false;
246
+ answered = true;
247
+ forwarding = answer.forward;
248
+ intervalSeconds = answer.intervalSeconds;
249
+ sendingHistories = !answer.skipHistories;
250
+ if (!sendingHistories)
251
+ seen.clear();
252
+ startTimer();
253
+ tick();
254
+ return true;
255
+ }
256
+ catch (error) {
257
+ if (stopped() || !noAnswer(error))
258
+ return false;
259
+ }
260
+ }
261
+ })()
262
+ : Promise.resolve(answered);
203
263
  return {
204
- forwarding,
205
- intervalSeconds,
206
- sendingHistories,
264
+ get answered() {
265
+ return answered;
266
+ },
267
+ whenAnswered,
268
+ get forwarding() {
269
+ return forwarding;
270
+ },
271
+ get intervalSeconds() {
272
+ return intervalSeconds;
273
+ },
274
+ get sendingHistories() {
275
+ return sendingHistories;
276
+ },
207
277
  sink,
208
278
  async shutdown() {
279
+ stopAsking.abort();
280
+ await whenAnswered;
209
281
  if (timer !== undefined)
210
282
  clearInterval(timer);
211
283
  // The tick at work is cut short, so the last one starts at once.
@@ -213,11 +285,16 @@ export async function startEnvInstanceTelemetry(options) {
213
285
  working.stop.abort();
214
286
  await working.done;
215
287
  }
216
- await collect(new AbortController().signal);
288
+ // keep-trying with no answer has no Flowrensic to hand over to.
289
+ const handOver = answered || !unanswered;
290
+ if (handOver)
291
+ await collect(new AbortController().signal);
217
292
  await sink.close();
218
- await ignoringFailure(async () => {
219
- await client.ingest.envInstanceHandover({ deployEnv, envInstanceId, workerId, version }, { timeoutMs });
220
- });
293
+ if (handOver) {
294
+ await ignoringFailure(async () => {
295
+ await client.ingest.envInstanceHandover({ deployEnv, envInstanceId, workerId, version }, { timeoutMs });
296
+ });
297
+ }
221
298
  if (ownConnection)
222
299
  await connection.close();
223
300
  },
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flowrensic/node",
3
- "version": "0.6.17",
3
+ "version": "0.6.18",
4
4
  "description": "Replay history fetch and activity interceptor for Temporal workers, for use with Flowrensic.",
5
5
  "type": "module",
6
6
  "main": "./dist/cjs/index.js",