@merkaly/nest 0.2.1 → 0.2.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.
package/README.md CHANGED
@@ -39,7 +39,7 @@ strict-peer-dependencies=false
39
39
  import {
40
40
  env, loadEnv, // config
41
41
  LoggerModule, LoggerService, // logger
42
- requestLogger, requestOrigin, requestContext, bodyParsers, bodyParserReason, // uma linha por request
42
+ requestLogger, requestOrigin, requestContext, noteRequest, bodyParsers, bodyParserReason, // uma linha por request
43
43
  AbstractExceptionFilter, ExceptionsFilter, rememberError, // filtros (motivo do erro para o log)
44
44
  RabbitModule, EventsPublisher, EventsConsumer, EventRejectedException, // eventos
45
45
  rabbitConsumerOptions, assertConsumerTopology, OnMerkalyEvent,
@@ -89,16 +89,17 @@ Error: boom
89
89
 
90
90
  - **ORIGIN** (24): quem fez o request, nas linhas de request e nos logs internos emitidos durante ele: `x-merkaly-host`, senão o host do `Origin`, `cf-connecting-ip`, o primeiro `x-forwarded-for` ou o socket (`requestOrigin`). Fora de um request, o `service`.
91
91
  - **SCOPE** (22): contexto de negócio definido pelo app (`requestLogger({ scope })` ou `LoggerModule({ scope })`, ex.: id da organização). Nas linhas de request é resolvido ao terminar a resposta, então pega o que os guards definiram.
92
- - **KIND** (16): método HTTP nas linhas de request; nos logs internos, o `group` de quem loga.
92
+ - **KIND** (16): método HTTP nas linhas de request; nos logs internos, o `group` de quem loga. Com `requestLogger({ kind })` a linha de request usa esse valor (ex.: o evento do webhook) e o método passa a abrir a mensagem: `PAYMENT_RECEIVED POST /asaas 200 44ms`.
93
93
  - **MESSAGE**: `/path STATUS Nms "motivo"` (motivo cortado em 200, sem query, body nem headers) ou o texto. Nível: `ERROR` em 5xx com o stack embaixo, `WARN` em 4xx, `LOG` no resto.
94
94
 
95
95
  ```ts
96
96
  // main.ts
97
- app.use(requestLogger(app)); // antes do Swagger; opcional { scope: (req) => 'stripe' }
97
+ app.use(requestLogger(app)); // antes do Swagger; opcional { scope: (req) => 'stripe', kind: (req) => req.body?.event }
98
98
  bodyParsers(app, { raw: ['/webhook/stripe'] }); // json + urlencoded com motivo seguro ("Invalid JSON body")
99
99
  SwaggerModule.setup('/', app, document);
100
100
  ```
101
101
 
102
+ - `noteRequest(texto, nível?)` soma um resultado ao fim da linha do request (`-> payment.received`, `"discarded"`) em vez de uma linha separada; o nível só sobe (`warn`/`error`). Fora de um request devolve `false`. O `EventsPublisher` usa isso: dentro de um request o `emit` vira `-> <tipo>` na linha do request, fora dele continua com linha própria.
102
103
  - O ORIGIN do request fica num `AsyncLocalStorage` do pacote (`requestContext`). O `requestLogger` cria o contexto e o `LoggerModule` registra um middleware que volta a entrar nele depois dos body parsers (que podem perder o contexto assíncrono), igual ao `nestjs-cls`.
103
104
  - `bodyParsers(app, { raw?, rawBody? })`: `raw` mantém o body como Buffer nesses paths; `rawBody: true` preenche `req.rawBody` (igual ao `NestFactory.create(..., { rawBody: true })`, que deixa de registrar os próprios parsers).
104
105
  - SCOPE com CLS, sem o pacote depender de `nestjs-cls`:
@@ -6,6 +6,7 @@ export interface RequestLogLocals {
6
6
  }
7
7
  export interface RequestLoggerOptions {
8
8
  scope?: (request: Request) => string | undefined;
9
+ kind?: (request: Request) => string | undefined;
9
10
  }
10
11
  export declare function requestLogger(app: INestApplicationContext, options?: RequestLoggerOptions): RequestHandler;
11
12
  //# sourceMappingURL=request-logger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"request-logger.d.ts","sourceRoot":"","sources":["../../src/http/request-logger.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,KAAK,EAAgB,OAAO,EAAE,cAAc,EAAY,MAAM,SAAS,CAAC;AAE/E,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;CAClD;AAQD,wBAAgB,aAAa,CAC3B,GAAG,EAAE,uBAAuB,EAC5B,OAAO,GAAE,oBAAyB,GACjC,cAAc,CA8BhB"}
1
+ {"version":3,"file":"request-logger.d.ts","sourceRoot":"","sources":["../../src/http/request-logger.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,KAAK,EAAgB,OAAO,EAAE,cAAc,EAAY,MAAM,SAAS,CAAC;AAE/E,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;IACjD,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;CACjD;AAaD,wBAAgB,aAAa,CAC3B,GAAG,EAAE,uBAAuB,EAC5B,OAAO,GAAE,oBAAyB,GACjC,cAAc,CAuChB"}
@@ -2,6 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.requestLogger = requestLogger;
4
4
  const logger_1 = require("../logger");
5
+ const LEVELS = ['log', 'warn', 'error'];
6
+ const higher = (a, b) => LEVELS.indexOf(a) >= LEVELS.indexOf(b) ? a : b;
5
7
  const MAX_REASON = 200;
6
8
  const capped = (reason) => reason.length > MAX_REASON ? `${reason.slice(0, MAX_REASON)}…` : reason;
7
9
  function requestLogger(app, options = {}) {
@@ -15,12 +17,21 @@ function requestLogger(app, options = {}) {
15
17
  const ms = Number(process.hrtime.bigint() - started) / 1e6;
16
18
  const path = request.originalUrl.split('?')[0];
17
19
  const { error, trace } = response.locals;
18
- const line = `${path} ${response.statusCode} ${ms.toFixed(0)}ms`;
19
- const message = error ? `${line} ${JSON.stringify(capped(error))}` : line;
20
- const tier = response.statusCode >= 500 ? 'error' : response.statusCode >= 400 ? 'warn' : 'log';
20
+ const kind = options.kind?.(request);
21
+ const target = kind ? `${request.method} ${path}` : path;
22
+ const notes = context.notes ?? [];
23
+ const line = [
24
+ `${target} ${response.statusCode} ${ms.toFixed(0)}ms`,
25
+ error ? JSON.stringify(capped(error)) : '',
26
+ ...notes.map((note) => note.text),
27
+ ]
28
+ .filter(Boolean)
29
+ .join(' ');
30
+ const status = response.statusCode >= 500 ? 'error' : response.statusCode >= 400 ? 'warn' : 'log';
31
+ const tier = notes.reduce((level, note) => higher(level, note.level), status);
21
32
  logger_1.requestContext.run(context, () => logger.request(tier, {
22
- method: request.method,
23
- message,
33
+ method: kind || request.method,
34
+ message: line,
24
35
  trace: tier === 'error' ? trace : undefined,
25
36
  }));
26
37
  });
@@ -1 +1 @@
1
- {"version":3,"file":"request-logger.js","sourceRoot":"","sources":["../../src/http/request-logger.ts"],"names":[],"mappings":";;AAmBA,sCAiCC;AApDD,sCAAqE;AAarE,MAAM,UAAU,GAAG,GAAG,CAAC;AAEvB,MAAM,MAAM,GAAG,CAAC,MAAc,EAAE,EAAE,CAChC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;AAG1E,SAAgB,aAAa,CAC3B,GAA4B,EAC5B,UAAgC,EAAE;IAElC,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,sBAAa,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAEzD,OAAO,CAAC,OAAgB,EAAE,QAAkB,EAAE,IAAkB,EAAE,EAAE;QAClE,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,IAAA,kBAAS,EAAC,OAAO,CAAC,CAAC;QAEnC,IAAI,OAAO,CAAC,KAAK;YAAE,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,CAAC;QAElE,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YACzB,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,GAAG,CAAC;YAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/C,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,MAA0B,CAAC;YAC7D,MAAM,IAAI,GAAG,GAAG,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;YACjE,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC1E,MAAM,IAAI,GACR,QAAQ,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;YAGrF,uBAAc,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,CAC/B,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE;gBACnB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO;gBACP,KAAK,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;aAC5C,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,uBAAc,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"request-logger.js","sourceRoot":"","sources":["../../src/http/request-logger.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,18 @@
1
1
  import { AsyncLocalStorage } from 'async_hooks';
2
2
  import { NestMiddleware } from '@nestjs/common';
3
3
  import type { NextFunction, Request, Response } from 'express';
4
+ export type RequestNoteLevel = 'log' | 'warn' | 'error';
5
+ export interface RequestNote {
6
+ text: string;
7
+ level: RequestNoteLevel;
8
+ }
4
9
  export interface RequestContext {
5
10
  origin: string;
6
11
  scope?: () => string | undefined;
12
+ notes?: RequestNote[];
7
13
  }
8
14
  export declare const requestContext: AsyncLocalStorage<RequestContext>;
15
+ export declare function noteRequest(text: string, level?: RequestNoteLevel): boolean;
9
16
  export declare function requestOrigin(request: Request): string;
10
17
  export declare function contextOf(request: Request): RequestContext;
11
18
  export declare class RequestContextMiddleware implements NestMiddleware {
@@ -1 +1 @@
1
- {"version":3,"file":"request-context.d.ts","sourceRoot":"","sources":["../../src/logger/request-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAc,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE/D,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CAClC;AAED,eAAO,MAAM,cAAc,mCAA0C,CAAC;AAStE,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,UAS7C;AAGD,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc,CAI1D;AAGD,qBACa,wBAAyB,YAAW,cAAc;IAC7D,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY;CAGtD"}
1
+ {"version":3,"file":"request-context.d.ts","sourceRoot":"","sources":["../../src/logger/request-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAc,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE/D,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AAExD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,gBAAgB,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACjC,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;CACvB;AAED,eAAO,MAAM,cAAc,mCAA0C,CAAC;AAGtE,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,gBAAwB,WAQxE;AASD,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,UAS7C;AAGD,wBAAgB,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc,CAI1D;AAGD,qBACa,wBAAyB,YAAW,cAAc;IAC7D,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY;CAGtD"}
@@ -7,11 +7,19 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  };
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.RequestContextMiddleware = exports.requestContext = void 0;
10
+ exports.noteRequest = noteRequest;
10
11
  exports.requestOrigin = requestOrigin;
11
12
  exports.contextOf = contextOf;
12
13
  const async_hooks_1 = require("async_hooks");
13
14
  const common_1 = require("@nestjs/common");
14
15
  exports.requestContext = new async_hooks_1.AsyncLocalStorage();
16
+ function noteRequest(text, level = 'log') {
17
+ const context = exports.requestContext.getStore();
18
+ if (!context)
19
+ return false;
20
+ (context.notes ??= []).push({ level, text });
21
+ return true;
22
+ }
15
23
  const CONTEXT = Symbol('merkaly.request.context');
16
24
  const hostOf = (origin) => origin?.split('/').pop() || undefined;
17
25
  function requestOrigin(request) {
@@ -1 +1 @@
1
- {"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../src/logger/request-context.ts"],"names":[],"mappings":";;;;;;;;;AAkBA,sCASC;AAGD,8BAIC;AAlCD,6CAAgD;AAChD,2CAA4D;AAQ/C,QAAA,cAAc,GAAG,IAAI,+BAAiB,EAAkB,CAAC;AAEtE,MAAM,OAAO,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAC;AAIlD,MAAM,MAAM,GAAG,CAAC,MAAe,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,SAAS,CAAC;AAG1E,SAAgB,aAAa,CAAC,OAAgB;IAC5C,OAAO,CACL,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAClC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;QACvD,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;QACtD,SAAS,CACV,CAAC;AACJ,CAAC;AAGD,SAAgB,SAAS,CAAC,OAAgB;IACxC,MAAM,GAAG,GAAG,OAAyB,CAAC;IAEtC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAC/D,CAAC;AAIM,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IACnC,GAAG,CAAC,OAAgB,EAAE,CAAW,EAAE,IAAkB;QACnD,sBAAc,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;CACF,CAAA;AAJY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,mBAAU,GAAE;GACA,wBAAwB,CAIpC"}
1
+ {"version":3,"file":"request-context.js","sourceRoot":"","sources":["../../src/logger/request-context.ts"],"names":[],"mappings":";;;;;;;;;AAoBA,kCAQC;AASD,sCASC;AAGD,8BAIC;AArDD,6CAAgD;AAChD,2CAA4D;AAgB/C,QAAA,cAAc,GAAG,IAAI,+BAAiB,EAAkB,CAAC;AAGtE,SAAgB,WAAW,CAAC,IAAY,EAAE,QAA0B,KAAK;IACvE,MAAM,OAAO,GAAG,sBAAc,CAAC,QAAQ,EAAE,CAAC;IAE1C,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAE3B,CAAC,OAAO,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,OAAO,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAC;AAIlD,MAAM,MAAM,GAAG,CAAC,MAAe,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,SAAS,CAAC;AAG1E,SAAgB,aAAa,CAAC,OAAgB;IAC5C,OAAO,CACL,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAClC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;QACvD,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;QACtD,SAAS,CACV,CAAC;AACJ,CAAC;AAGD,SAAgB,SAAS,CAAC,OAAgB;IACxC,MAAM,GAAG,GAAG,OAAyB,CAAC;IAEtC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAC/D,CAAC;AAIM,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IACnC,GAAG,CAAC,OAAgB,EAAE,CAAW,EAAE,IAAkB;QACnD,sBAAc,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;CACF,CAAA;AAJY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,mBAAU,GAAE;GACA,wBAAwB,CAIpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"events.publisher.d.ts","sourceRoot":"","sources":["../../src/rabbit/events.publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,sBAAsB,EACtB,qBAAqB,EAGtB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAEjB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EACL,YAAY,EAKZ,YAAY,EACZ,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,aAAa,GAAI,OAAO,GAAG,KAAG,MAGkB,CAAC;AAI9D,qBACa,eAAgB,YAAW,sBAAsB,EAAE,qBAAqB;IAKzD,OAAO,CAAC,QAAQ,CAAC,OAAO;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IALhD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,YAAY,CAAe;gBAGQ,OAAO,EAAE,mBAAmB,EAC7B,MAAM,EAAE,YAAY,GAAG,IAAI,EACvD,MAAM,CAAC,EAAE,aAAa;IAMpC,IAAW,MAAM,iBAEhB;IAED,OAAO,KAAK,QAAQ,GAEnB;IAEM,sBAAsB;IAkBtB,qBAAqB;IAKrB,IAAI,CAAC,CAAC,SAAS,gBAAgB,EACpC,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EACrB,IAAI,CAAC,EAAE,gBAAgB,GACtB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;CAuB5B"}
1
+ {"version":3,"file":"events.publisher.d.ts","sourceRoot":"","sources":["../../src/rabbit/events.publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,sBAAsB,EACtB,qBAAqB,EAGtB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAEjB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,aAAa,EAAe,MAAM,WAAW,CAAC;AACvD,OAAO,EACL,YAAY,EAKZ,YAAY,EACZ,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,aAAa,GAAI,OAAO,GAAG,KAAG,MAGkB,CAAC;AAI9D,qBACa,eAAgB,YAAW,sBAAsB,EAAE,qBAAqB;IAKzD,OAAO,CAAC,QAAQ,CAAC,OAAO;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IALhD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,YAAY,CAAe;gBAGQ,OAAO,EAAE,mBAAmB,EAC7B,MAAM,EAAE,YAAY,GAAG,IAAI,EACvD,MAAM,CAAC,EAAE,aAAa;IAMpC,IAAW,MAAM,iBAEhB;IAED,OAAO,KAAK,QAAQ,GAEnB;IAEM,sBAAsB;IAkBtB,qBAAqB;IAKrB,IAAI,CAAC,CAAC,SAAS,gBAAgB,EACpC,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EACrB,IAAI,CAAC,EAAE,gBAAgB,GACtB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;CAuB5B"}
@@ -69,7 +69,8 @@ let EventsPublisher = class EventsPublisher {
69
69
  defaultValue: undefined,
70
70
  })
71
71
  .then(() => {
72
- this.logger.log({ group: GROUP, message: line });
72
+ if (!(0, logger_1.noteRequest)(`-> ${type}`))
73
+ this.logger.log({ group: GROUP, message: line });
73
74
  return event;
74
75
  })
75
76
  .catch((error) => {
@@ -1 +1 @@
1
- {"version":3,"file":"events.publisher.js","sourceRoot":"","sources":["../../src/rabbit/events.publisher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.publisher.js","sourceRoot":"","sources":["../../src/rabbit/events.publisher.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@merkaly/nest",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "Shared NestJS runtime and tooling for Merkaly backend apps: pinned versions plus RabbitMQ events, logger, filters, config and signatures",
5
5
  "repository": {
6
6
  "type": "git",