@merkaly/nest 0.2.2 → 0.2.3
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
|
@@ -74,22 +74,22 @@ export class AppModule {}
|
|
|
74
74
|
|
|
75
75
|
### Logger e requests
|
|
76
76
|
|
|
77
|
-
|
|
77
|
+
LEVEL, ORIGIN e SCOPE têm largura fixa (`-` quando falta o valor, `…` quando passa da largura), então a descrição (`KIND:: MESSAGE`) começa sempre na mesma posição:
|
|
78
78
|
|
|
79
79
|
```
|
|
80
|
-
LEVEL ORIGIN SCOPE KIND
|
|
81
|
-
08:02:05 657 DEBUG api.merkaly.io - MongoService
|
|
82
|
-
08:02:08 410 LOG admin.merkaly.io org_6sflVH0jykwUzj8z
|
|
83
|
-
08:02:08 410 LOG admin.merkaly.io org_6sflVH0jykwUzj8z POST
|
|
84
|
-
08:02:08 423 WARN 203.0.113.7 - GET
|
|
85
|
-
08:02:08 439 ERROR admin.merkaly.io org_6sflVH0jykwUzj8z GET
|
|
80
|
+
LEVEL ORIGIN SCOPE KIND:: MESSAGE
|
|
81
|
+
08:02:05 657 DEBUG api.merkaly.io - MongoService:: connected
|
|
82
|
+
08:02:08 410 LOG admin.merkaly.io org_6sflVH0jykwUzj8z OrderSaleRepository:: order created
|
|
83
|
+
08:02:08 410 LOG admin.merkaly.io org_6sflVH0jykwUzj8z POST:: /admin/orders 201 15ms
|
|
84
|
+
08:02:08 423 WARN 203.0.113.7 - GET:: /wp-login.php 404 2ms "Cannot GET /wp-login.php"
|
|
85
|
+
08:02:08 439 ERROR admin.merkaly.io org_6sflVH0jykwUzj8z GET:: /admin/boom 500 0ms "boom"
|
|
86
86
|
Error: boom
|
|
87
87
|
at ...
|
|
88
88
|
```
|
|
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
|
|
92
|
+
- **KIND::** abre a descrição, sem largura fixa (nunca é cortado): 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 para a descrição: `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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.service.d.ts","sourceRoot":"","sources":["../../src/logger/logger.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,QAAQ,EAAY,MAAM,gBAAgB,CAAC;AAExE,OAAO,EAAkB,mBAAmB,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAsBpG,qBACa,aAAa;IACwB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAR,OAAO,CAAC,EAAE,mBAAmB,YAAA;IAEvF,GAAG,CAAC,OAAO,EAAE,cAAc;IAI3B,KAAK,CAAC,OAAO,EAAE,cAAc,GAAG;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IAKnD,IAAI,CAAC,OAAO,EAAE,cAAc;IAI5B,KAAK,CAAC,OAAO,EAAE,cAAc;IAI7B,OAAO,CAAC,OAAO,EAAE,cAAc;IAK/B,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,WAAW;IAKtE,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,KAAK;
|
|
1
|
+
{"version":3,"file":"logger.service.d.ts","sourceRoot":"","sources":["../../src/logger/logger.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,QAAQ,EAAY,MAAM,gBAAgB,CAAC;AAExE,OAAO,EAAkB,mBAAmB,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAsBpG,qBACa,aAAa;IACwB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAR,OAAO,CAAC,EAAE,mBAAmB,YAAA;IAEvF,GAAG,CAAC,OAAO,EAAE,cAAc;IAI3B,KAAK,CAAC,OAAO,EAAE,cAAc,GAAG;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;IAKnD,IAAI,CAAC,OAAO,EAAE,cAAc;IAI5B,KAAK,CAAC,OAAO,EAAE,cAAc;IAI7B,OAAO,CAAC,OAAO,EAAE,cAAc;IAK/B,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,WAAW;IAKtE,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,KAAK;IAoBb,OAAO,CAAC,WAAW;CAMpB"}
|
|
@@ -28,7 +28,7 @@ const levelColors = {
|
|
|
28
28
|
debug: chalk.magentaBright,
|
|
29
29
|
verbose: chalk.cyanBright,
|
|
30
30
|
};
|
|
31
|
-
const WIDTH = { level: 7, origin: 24, scope: 22
|
|
31
|
+
const WIDTH = { level: 7, origin: 24, scope: 22 };
|
|
32
32
|
const fit = (value, width) => {
|
|
33
33
|
const text = value || '-';
|
|
34
34
|
return text.length > width ? `${text.slice(0, width - 1)}…` : text.padEnd(width);
|
|
@@ -71,7 +71,7 @@ let LoggerService = class LoggerService {
|
|
|
71
71
|
const output = [];
|
|
72
72
|
if (timestamps)
|
|
73
73
|
output.push(this.currentTime());
|
|
74
|
-
output.push(color(fit(tier.toUpperCase(), WIDTH.level)), chalk.hex('#00FF77')(fit(origin, WIDTH.origin)), chalk.cyan(fit(scope, WIDTH.scope)), chalk.hex('#FFA500')(
|
|
74
|
+
output.push(color(fit(tier.toUpperCase(), WIDTH.level)), chalk.hex('#00FF77')(fit(origin, WIDTH.origin)), chalk.cyan(fit(scope, WIDTH.scope)), kind ? `${chalk.hex('#FFA500')(`${kind}::`)} ${message}` : message);
|
|
75
75
|
return console.log(output.join(' '));
|
|
76
76
|
}
|
|
77
77
|
currentTime() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.service.js","sourceRoot":"","sources":["../../src/logger/logger.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,2CAAwE;AACxE,kDAA0B;AAC1B,qDAAoG;AACpG,uDAAmD;AAEnD,MAAM,KAAK,GAAG,IAAI,eAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;AAE/C,MAAM,WAAW,GAA2C;IAC1D,GAAG,EAAE,KAAK,CAAC,UAAU;IACrB,KAAK,EAAE,KAAK,CAAC,SAAS;IACtB,IAAI,EAAE,KAAK,CAAC,YAAY;IACxB,KAAK,EAAE,KAAK,CAAC,aAAa;IAC1B,OAAO,EAAE,KAAK,CAAC,UAAU;CAC1B,CAAC;AAEF,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"logger.service.js","sourceRoot":"","sources":["../../src/logger/logger.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED