lemon-core 5.0.1 → 5.0.2

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.
@@ -6,6 +6,7 @@
6
6
  * @author Steve Jung <steve@lemoncloud.io>
7
7
  * @date 2018-05-23 initial version
8
8
  * @date 2019-11-26 cleanup and optimized for `lemon-core#v2`
9
+ * @date 2026-10-28 v5 B7: one `PERF: > handle` line per call (with `initialize()`).
9
10
  *
10
11
  * @copyright (C) lemoncloud.io 2019 - All Rights Reserved.
11
12
  */
@@ -45,10 +45,12 @@ exports.LambdaModule = exports.$wss = exports.$web = exports.$sqs = exports.$sns
45
45
  * @author Steve Jung <steve@lemoncloud.io>
46
46
  * @date 2018-05-23 initial version
47
47
  * @date 2019-11-26 cleanup and optimized for `lemon-core#v2`
48
+ * @date 2026-10-28 v5 B7: one `PERF: > handle` line per call (with `initialize()`).
48
49
  *
49
50
  * @copyright (C) lemoncloud.io 2019 - All Rights Reserved.
50
51
  */
51
52
  const engine_1 = require("../../engine/");
53
+ const perf_1 = require("../../lib/perf");
52
54
  //* export default
53
55
  __exportStar(require("./lambda-handler"), exports);
54
56
  //* export core classes
@@ -89,6 +91,9 @@ const lambda_cron_handler_1 = require("./lambda-cron-handler");
89
91
  const lambda_cognito_handler_2 = require("./lambda-cognito-handler");
90
92
  const lambda_dynamo_stream_handler_1 = require("./lambda-dynamo-stream-handler");
91
93
  const lambda_notification_handler_1 = require("./lambda-notification-handler");
94
+ //* v5 B7: namespace of the `PERF` lines, and the count of `handle` lines in this process (the first is `cold=1`).
95
+ const PERF = engine_1.$U.NS('PERF', 'cyan');
96
+ let $handles = 0;
92
97
  /**
93
98
  * class: `LambdaModule`
94
99
  * - default module
@@ -103,8 +108,24 @@ class LambdaModule {
103
108
  const thiz = this;
104
109
  const lambda = new (class extends lambda_handler_1.LambdaHandler {
105
110
  async handle(event, context) {
106
- //* v5 B5: an init failure is resolved like any other failure (never rejects, D7).
107
- return thiz.engine.initialize().then(() => super.handle(event, context), e => this.asFailure(e, event, context));
111
+ const t0 = (0, perf_1.nowMs)();
112
+ try {
113
+ //* v5 B5: an init failure is resolved like any other failure (never rejects, D7).
114
+ return await thiz.engine.initialize().then(() => super.handle(event, context), e => this.asFailure(e, event, context));
115
+ }
116
+ finally {
117
+ //* v5 B7: one `PERF: > handle <ms> ms type=<type> cold=<1|0>` line (with `initialize()`).
118
+ const type = (() => {
119
+ try {
120
+ return (event && this.findService(event)) || 'unknown';
121
+ }
122
+ catch (e) {
123
+ return 'unknown';
124
+ }
125
+ })();
126
+ const ms = `${((0, perf_1.nowMs)() - t0).toFixed(1)} ms`;
127
+ thiz.engine.inf(PERF, '>', 'handle', ms, `type=${type} cold=${++$handles === 1 ? 1 : 0}`);
128
+ }
108
129
  }
109
130
  })();
110
131
  this.lambda = lambda;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cores/lambda/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cores/lambda/index.ts"],"names":[],"mappings":"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"}
@@ -51,6 +51,7 @@ exports.MyHttpHeaderTool = exports.LambdaWEBHandler = exports.mxNextFailure = ex
51
51
  * @date 2019-11-20 initial version via backbone
52
52
  * @date 2022-04-07 use env, and opt header-parser
53
53
  * @date 2025-05-09 improved to support `referer` and `origin` header.
54
+ * @date 2026-10-28 v5 B7: one `PERF: > request` line per request.
54
55
  *
55
56
  * @copyright (C) 2019 LemonCloud Co Ltd. - All Rights Reserved.
56
57
  */
@@ -66,6 +67,7 @@ const config_1 = __importDefault(require("../config"));
66
67
  const perf_1 = require("../../lib/perf");
67
68
  const protocol_1 = __importDefault(require("../protocol/"));
68
69
  const NS = engine_1.$U.NS('HWEB', 'yellow'); // NAMESPACE TO BE PRINTED.
70
+ const PERF = engine_1.$U.NS('PERF', 'cyan'); // v5 B7: namespace of the `PERF` lines.
69
71
  /**
70
72
  * `@aws-sdk/client-sts`, imported on the first use (not at import; v5 B2-c, K6).
71
73
  */
@@ -150,6 +152,51 @@ const redirect = (location, status) => {
150
152
  return res;
151
153
  };
152
154
  exports.redirect = redirect;
155
+ //* v5 B7: the request trace per event object (from `packContext()` to `handle()`).
156
+ const $traces = new WeakMap();
157
+ //* v5 B7: count of `request` lines in this process (only the first one is `cold=1`).
158
+ let $requests = 0;
159
+ //* v5 B7: start a new trace for the event (kept only if the event is an object).
160
+ const startTrace = (event) => {
161
+ const trace = new perf_1.PerfTrace();
162
+ if (event && typeof event === 'object')
163
+ $traces.set(event, trace);
164
+ return trace;
165
+ };
166
+ //* v5 B7: take the trace of the event out of the map, or start a new one (`context=0`).
167
+ const takeTrace = (event) => {
168
+ const trace = event && typeof event === 'object' ? $traces.get(event) : undefined;
169
+ if (!trace)
170
+ return new perf_1.PerfTrace();
171
+ $traces.delete(event);
172
+ return trace;
173
+ };
174
+ /**
175
+ * v5 B7: print one `PERF: > request <total> ms mode=… type=… [cmd=…] status=… context=… param=… handler=… response=… cold=…` line.
176
+ * - values are the route words and numbers only (no path, id, host, header or body). never throws.
177
+ */
178
+ const logRequest = (trace, param, res) => {
179
+ try {
180
+ const total = trace.elapsed();
181
+ const m = trace.marks();
182
+ const status = res && res.statusCode !== undefined ? `${res.statusCode}` : undefined;
183
+ const tail = trace.line({
184
+ mode: param?.mode,
185
+ type: param?.type,
186
+ cmd: param?.cmd,
187
+ status,
188
+ context: m.context ?? 0,
189
+ param: m.param,
190
+ handler: m.handler,
191
+ response: m.response,
192
+ cold: ++$requests === 1,
193
+ });
194
+ (0, engine_1._inf)(PERF, '>', 'request', `${total.toFixed(1)} ms`, tail);
195
+ }
196
+ catch (e) {
197
+ //* a log line must not break the response.
198
+ }
199
+ };
153
200
  /**
154
201
  * start proxy-chain by event & context.
155
202
  * @param event event
@@ -168,27 +215,38 @@ const promised = async (event, $ctx) => {
168
215
  };
169
216
  exports.promised = promised;
170
217
  /**
171
- * builder for default handler
218
+ * (internal) the default handler with an optional trace.
219
+ * - v5 B7: marks `handler` after `handleProtocol()`, and `response` after the response is built.
172
220
  */
173
- const mxNextHandler = (thiz) => async (params) => {
221
+ const nextHandlerOf = (thiz, trace) => async (params) => {
174
222
  //* determine if param or func.
175
223
  const fx = typeof params == 'function' ? params : null;
176
224
  const $param = params && typeof params == 'object' ? params : null;
177
225
  const { param, event } = $param || {};
178
226
  //* call the main handler()
179
227
  const R = $param ? await thiz.handleProtocol(param, event) : fx;
180
- //* - if like to override the full response, then return function.
181
- if (R && typeof R == 'function')
182
- return R();
183
- //* - override `Access-Control-Allow-Origin` to the current origin due to ajax credentials.
184
- const { httpMethod: method, headers } = event || {};
185
- if (method && method != 'GET') {
186
- const origin = `${(headers && headers['origin']) || ''}`;
187
- return (0, exports.success)(R, null, origin);
188
- }
189
- //* returns response..
190
- return (0, exports.success)(R);
228
+ trace?.mark('handler');
229
+ //* build the response (the same rules as before).
230
+ const res = await (() => {
231
+ //* - if like to override the full response, then return function.
232
+ if (R && typeof R == 'function')
233
+ return R();
234
+ //* - override `Access-Control-Allow-Origin` to the current origin due to ajax credentials.
235
+ const { httpMethod: method, headers } = event || {};
236
+ if (method && method != 'GET') {
237
+ const origin = `${(headers && headers['origin']) || ''}`;
238
+ return (0, exports.success)(R, null, origin);
239
+ }
240
+ //* returns response..
241
+ return (0, exports.success)(R);
242
+ })();
243
+ trace?.mark('response');
244
+ return res;
191
245
  };
246
+ /**
247
+ * builder for default handler
248
+ */
249
+ const mxNextHandler = (thiz) => nextHandlerOf(thiz, null);
192
250
  exports.mxNextHandler = mxNextHandler;
193
251
  /**
194
252
  * v5 B5: classify an error by the `mxNextFailure` rules — the HTTP failure response and whether to report it.
@@ -229,12 +287,22 @@ const asFailureResult = (e) => {
229
287
  };
230
288
  exports.asFailureResult = asFailureResult;
231
289
  /**
232
- * builder for failure promised.
233
- * - v5 B5: the rules live in `asFailureResult()`; this adds the log and the report.
290
+ * (internal) the failure handler with an optional trace.
291
+ * - v5 B7: closes the open steps at the throw (`param` too if it failed before the handler),
292
+ * and marks `response` after `asFailureResult()`.
234
293
  */
235
- const mxNextFailure = (event, $ctx) => (e) => {
294
+ const nextFailureOf = (event, $ctx, trace) => (e) => {
295
+ //* v5 B7: the step that threw ends here.
296
+ if (trace) {
297
+ const m = trace.marks();
298
+ if (m.param === undefined)
299
+ trace.mark('param');
300
+ if (m.handler === undefined)
301
+ trace.mark('handler');
302
+ }
236
303
  (0, engine_1._err)(NS, `! err =`, e instanceof Error ? e : engine_1.$U.json(e));
237
304
  const { message, response, report } = (0, exports.asFailureResult)(e);
305
+ trace?.mark('response');
238
306
  if (message.startsWith('404 NOT FOUND'))
239
307
  return response;
240
308
  (0, engine_1._err)(NS, `! err.msg =`, message);
@@ -245,6 +313,11 @@ const mxNextFailure = (event, $ctx) => (e) => {
245
313
  .then(() => response);
246
314
  return response;
247
315
  };
316
+ /**
317
+ * builder for failure promised.
318
+ * - v5 B5: the rules live in `asFailureResult()`; this adds the log and the report.
319
+ */
320
+ const mxNextFailure = (event, $ctx) => nextFailureOf(event, $ctx, null);
248
321
  exports.mxNextFailure = mxNextFailure;
249
322
  /**
250
323
  * class: LambdaWEBHandler
@@ -308,6 +381,9 @@ class LambdaWEBHandler extends lambda_handler_1.LambdaSubHandler {
308
381
  * Default WEB Handler.
309
382
  */
310
383
  handle = async (event, $ctx) => {
384
+ //* v5 B7: the trace from `packContext()` (or a new one), and the param for the `request` line.
385
+ const trace = takeTrace(event);
386
+ let param;
311
387
  //* inspect API parameters.
312
388
  (0, engine_1._log)(NS, `handle()....`);
313
389
  const $path = event.pathParameters || {};
@@ -316,7 +392,20 @@ class LambdaWEBHandler extends lambda_handler_1.LambdaSubHandler {
316
392
  (0, engine_1._log)(NS, '! $path =', engine_1.$U.json($path));
317
393
  (0, engine_1._log)(NS, '! $param =', engine_1.$U.json($param));
318
394
  //* start promised..
319
- return (0, exports.promised)(event, $ctx).then((0, exports.mxNextHandler)(this)).catch((0, exports.mxNextFailure)(event, $ctx));
395
+ return (0, exports.promised)(event, $ctx)
396
+ .then(chain => {
397
+ //* v5 B7: the param step ends here.
398
+ trace.mark('param');
399
+ param = chain && typeof chain == 'object' ? chain.param : undefined;
400
+ return chain;
401
+ })
402
+ .then(nextHandlerOf(this, trace))
403
+ .catch(nextFailureOf(event, $ctx, trace))
404
+ .then(res => {
405
+ //* v5 B7: one `PERF: > request` line per request (success and failure).
406
+ logRequest(trace, param, res);
407
+ return res;
408
+ });
320
409
  };
321
410
  /**
322
411
  * handle param via protocol-service.
@@ -406,6 +495,8 @@ class LambdaWEBHandler extends lambda_handler_1.LambdaSubHandler {
406
495
  (0, engine_1._log)(NS, `packContext(${event ? '' : 'null'})..`);
407
496
  if (!event)
408
497
  return null;
498
+ //* v5 B7: start the request trace (`handle()` takes it by the same event object).
499
+ const trace = startTrace(event);
409
500
  //* prepare chain object.
410
501
  const reqContext = event?.requestContext;
411
502
  orgContext && (0, engine_1._log)(NS, `> orgContext =`, engine_1.$U.S(orgContext, 256, 32));
@@ -428,6 +519,7 @@ class LambdaWEBHandler extends lambda_handler_1.LambdaSubHandler {
428
519
  //* if it is protocol request via lambda, then returns valid context (bad JSON → `400 INVALID CONTEXT`).
429
520
  try {
430
521
  const $param = protocol_1.default.service.asTransformer('web').transformToParam(event);
522
+ trace.mark('context');
431
523
  return $param?.context;
432
524
  }
433
525
  catch (e) {
@@ -454,6 +546,7 @@ class LambdaWEBHandler extends lambda_handler_1.LambdaSubHandler {
454
546
  const $ctx = await $tool.prepareContext(_prepare(), reqContext);
455
547
  $ctx.source = protocol_1.default.service.myProtocolURI($ctx); // self service-uri as source
456
548
  // FINIAL. returns
549
+ trace.mark('context');
457
550
  return $ctx;
458
551
  }
459
552
  }
@@ -1 +1 @@
1
- {"version":3,"file":"lambda-web-handler.js","sourceRoot":"","sources":["../../../src/cores/lambda/lambda-web-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lambda-web-handler.js","sourceRoot":"","sources":["../../../src/cores/lambda/lambda-web-handler.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@
9
9
  *
10
10
  * @author Steve Jung <steve@lemoncloud.io>
11
11
  * @date 2026-10-27 v5 B2-c (D40)
12
+ * @date 2026-10-28 v5 B7: `PerfTrace` for the per-request `PERF` lines.
12
13
  *
13
14
  * @copyright (C) 2026 LemonCloud Co Ltd. - All Rights Reserved.
14
15
  */
@@ -33,3 +34,31 @@ export declare const measure: <T>(log: PerfLogger, ns: string, label: string, fn
33
34
  * - a rejection is passed through, and no line is printed.
34
35
  */
35
36
  export declare const measureAsync: <T>(log: PerfLogger, ns: string, label: string, fn: () => Promise<T>) => Promise<T>;
37
+ /** a value of `PerfTrace.line()`: `undefined`, `null` and `''` drop the key. */
38
+ export type PerfValue = string | number | boolean | null | undefined;
39
+ /**
40
+ * class: `PerfTrace`
41
+ * - step marks of one request (v5 B7): each `mark(name)` keeps the ms since the previous mark (or the start).
42
+ * - holds numbers only; the caller prints the line with its own logger.
43
+ */
44
+ export declare class PerfTrace {
45
+ private readonly t0;
46
+ private cursor;
47
+ private readonly $marks;
48
+ constructor();
49
+ /**
50
+ * keep the ms since the previous mark (or t0) as `name`, then move the cursor.
51
+ * @returns the ms of this mark.
52
+ */
53
+ mark(name: string): number;
54
+ /** the ms since t0. */
55
+ elapsed(): number;
56
+ /** a copy of the marks. */
57
+ marks(): Record<string, number>;
58
+ /**
59
+ * build the `key=value` tail in the given key order.
60
+ * - `undefined`, `null` and `''` drop the key; a boolean is `1`/`0`; a number (ms) has one decimal.
61
+ * - pass a number that is not ms (ex: an HTTP status) as a string.
62
+ */
63
+ line(extra: Record<string, PerfValue>): string;
64
+ }
package/dist/lib/perf.js CHANGED
@@ -10,11 +10,12 @@
10
10
  *
11
11
  * @author Steve Jung <steve@lemoncloud.io>
12
12
  * @date 2026-10-27 v5 B2-c (D40)
13
+ * @date 2026-10-28 v5 B7: `PerfTrace` for the per-request `PERF` lines.
13
14
  *
14
15
  * @copyright (C) 2026 LemonCloud Co Ltd. - All Rights Reserved.
15
16
  */
16
17
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.measureAsync = exports.measure = exports.nowMs = void 0;
18
+ exports.PerfTrace = exports.measureAsync = exports.measure = exports.nowMs = void 0;
18
19
  /**
19
20
  * current monotonic time in ms (from `process.hrtime.bigint()`).
20
21
  */
@@ -49,4 +50,63 @@ const measureAsync = async (log, ns, label, fn) => {
49
50
  return res;
50
51
  };
51
52
  exports.measureAsync = measureAsync;
53
+ /**
54
+ * class: `PerfTrace`
55
+ * - step marks of one request (v5 B7): each `mark(name)` keeps the ms since the previous mark (or the start).
56
+ * - holds numbers only; the caller prints the line with its own logger.
57
+ */
58
+ class PerfTrace {
59
+ //* start time (t0), and the cursor of the last mark.
60
+ t0;
61
+ cursor;
62
+ //* marks by name (the insertion order is kept).
63
+ $marks = {};
64
+ //* start the trace now.
65
+ constructor() {
66
+ this.t0 = (0, exports.nowMs)();
67
+ this.cursor = this.t0;
68
+ }
69
+ /**
70
+ * keep the ms since the previous mark (or t0) as `name`, then move the cursor.
71
+ * @returns the ms of this mark.
72
+ */
73
+ mark(name) {
74
+ const now = (0, exports.nowMs)();
75
+ const ms = now - this.cursor;
76
+ this.$marks[name] = ms;
77
+ this.cursor = now;
78
+ return ms;
79
+ }
80
+ /** the ms since t0. */
81
+ elapsed() {
82
+ return (0, exports.nowMs)() - this.t0;
83
+ }
84
+ /** a copy of the marks. */
85
+ marks() {
86
+ return { ...this.$marks };
87
+ }
88
+ /**
89
+ * build the `key=value` tail in the given key order.
90
+ * - `undefined`, `null` and `''` drop the key; a boolean is `1`/`0`; a number (ms) has one decimal.
91
+ * - pass a number that is not ms (ex: an HTTP status) as a string.
92
+ */
93
+ line(extra) {
94
+ //* format one value (or `null` to drop the key).
95
+ const asText = (v) => {
96
+ if (v === undefined || v === null || v === '')
97
+ return null;
98
+ if (typeof v === 'boolean')
99
+ return v ? '1' : '0';
100
+ if (typeof v === 'number')
101
+ return v.toFixed(1);
102
+ return `${v}`;
103
+ };
104
+ return Object.entries(extra || {})
105
+ .map(([k, v]) => [k, asText(v)])
106
+ .filter(([, v]) => v !== null)
107
+ .map(([k, v]) => `${k}=${v}`)
108
+ .join(' ');
109
+ }
110
+ }
111
+ exports.PerfTrace = PerfTrace;
52
112
  //# sourceMappingURL=perf.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"perf.js","sourceRoot":"","sources":["../../src/lib/perf.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAKH;;GAEG;AACI,MAAM,KAAK,GAAG,GAAW,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,CAAC;AAA5D,QAAA,KAAK,SAAuD;AAEzE,0CAA0C;AAC1C,MAAM,IAAI,GAAG,CAAC,EAAU,EAAU,EAAE,CAAC,GAAG,CAAC,IAAA,aAAK,GAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;AAEvE;;;;;;;;GAQG;AACI,MAAM,OAAO,GAAG,CAAI,GAAe,EAAE,EAAU,EAAE,KAAa,EAAE,EAAW,EAAK,EAAE;IACrF,MAAM,EAAE,GAAG,IAAA,aAAK,GAAE,CAAC;IACnB,MAAM,GAAG,GAAG,EAAE,EAAE,CAAC;IACjB,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,OAAO,GAAG,CAAC;AACf,CAAC,CAAC;AALW,QAAA,OAAO,WAKlB;AAEF;;;GAGG;AACI,MAAM,YAAY,GAAG,KAAK,EAAK,GAAe,EAAE,EAAU,EAAE,KAAa,EAAE,EAAoB,EAAc,EAAE;IAClH,MAAM,EAAE,GAAG,IAAA,aAAK,GAAE,CAAC;IACnB,MAAM,GAAG,GAAG,MAAM,EAAE,EAAE,CAAC;IACvB,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,OAAO,GAAG,CAAC;AACf,CAAC,CAAC;AALW,QAAA,YAAY,gBAKvB"}
1
+ {"version":3,"file":"perf.js","sourceRoot":"","sources":["../../src/lib/perf.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lemon-core",
3
- "version": "5.0.1",
3
+ "version": "5.0.2",
4
4
  "description": "Lemon Serverless Micro-Service Platform",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",