@zorionapp/gg-core 5.0.26 → 5.0.27-fix-gcp-log-shape.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zorionapp/gg-core",
3
- "version": "5.0.26",
3
+ "version": "5.0.27-fix-gcp-log-shape.1",
4
4
  "type": "commonjs",
5
5
  "dependencies": {
6
6
  "cache-manager": "5.2.4",
@@ -21,7 +21,13 @@ let GgCacheModule = GgCacheModule_1 = class GgCacheModule {
21
21
  inject: [gg_redis_1.redisConfig.KEY],
22
22
  isGlobal: true,
23
23
  useFactory: (redisConf) => {
24
- const client = (0, gg_redis_1.createRedisClient)(redisConf, { keepAlive: 1 });
24
+ const client = (0, gg_redis_1.createRedisClient)(redisConf, {
25
+ keepAlive: 1,
26
+ enableOfflineQueue: false,
27
+ commandTimeout: 1000,
28
+ maxRetriesPerRequest: 2,
29
+ connectTimeout: 5000,
30
+ });
25
31
  client.on('error', (err) => console.error('Redis cache client error', err));
26
32
  return {
27
33
  store: (0, cache_manager_ioredis_yet_1.redisInsStore)(client, {
@@ -1 +1 @@
1
- {"version":3,"file":"gg-cache.module.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-cache/gg-cache.module.ts"],"names":[],"mappings":";;;;;AAAA,yDAAoD;AACpD,2CAAuD;AAEvD,yEAA0D;AAC1D,iCAAiC;AACjC,0CAA6D;AAC7D,yDAAoD;AAG7C,IAAM,aAAa,qBAAnB,MAAM,aAAa;IACjB,MAAM,CAAC,OAAO;QACnB,OAAO;YACL,MAAM,EAAE,eAAa;YACrB,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,CAAC,iCAAc,CAAC;YAC3B,OAAO,EAAE,CAAC,iCAAc,CAAC;YACzB,OAAO,EAAE;gBACP,2BAAW,CAAC,aAAa,CAAC;oBACxB,MAAM,EAAE,CAAC,sBAAW,CAAC,GAAG,CAAC;oBACzB,QAAQ,EAAE,IAAI;oBACd,UAAU,EAAE,CAAC,SAAyC,EAAE,EAAE;wBACxD,MAAM,MAAM,GAAG,IAAA,4BAAiB,EAAC,SAAS,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;wBAC9D,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC,CAAC;wBAC5E,OAAO;4BACL,KAAK,EAAE,IAAA,yCAAa,EAAC,MAAM,EAAE;gCAC3B,GAAG,EAAE,gBAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC;6BAC3D,CAAC;yBACH,CAAC;oBACJ,CAAC;iBACF,CAAC;aACH;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAxBY,sCAAa;wBAAb,aAAa;IADzB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,aAAa,CAwBzB"}
1
+ {"version":3,"file":"gg-cache.module.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-cache/gg-cache.module.ts"],"names":[],"mappings":";;;;;AAAA,yDAAoD;AACpD,2CAAuD;AAEvD,yEAA0D;AAC1D,iCAAiC;AACjC,0CAA6D;AAC7D,yDAAoD;AAG7C,IAAM,aAAa,qBAAnB,MAAM,aAAa;IACjB,MAAM,CAAC,OAAO;QACnB,OAAO;YACL,MAAM,EAAE,eAAa;YACrB,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,CAAC,iCAAc,CAAC;YAC3B,OAAO,EAAE,CAAC,iCAAc,CAAC;YACzB,OAAO,EAAE;gBACP,2BAAW,CAAC,aAAa,CAAC;oBACxB,MAAM,EAAE,CAAC,sBAAW,CAAC,GAAG,CAAC;oBACzB,QAAQ,EAAE,IAAI;oBACd,UAAU,EAAE,CAAC,SAAyC,EAAE,EAAE;wBACxD,MAAM,MAAM,GAAG,IAAA,4BAAiB,EAAC,SAAS,EAAE;4BAC1C,SAAS,EAAE,CAAC;4BACZ,kBAAkB,EAAE,KAAK;4BACzB,cAAc,EAAE,IAAI;4BACpB,oBAAoB,EAAE,CAAC;4BACvB,cAAc,EAAE,IAAI;yBACrB,CAAC,CAAC;wBACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC,CAAC;wBAC5E,OAAO;4BACL,KAAK,EAAE,IAAA,yCAAa,EAAC,MAAM,EAAE;gCAC3B,GAAG,EAAE,gBAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC;6BAC3D,CAAC;yBACH,CAAC;oBACJ,CAAC;iBACF,CAAC;aACH;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AA9BY,sCAAa;wBAAb,aAAa;IADzB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,aAAa,CA8BzB"}
@@ -19,5 +19,6 @@ export declare class GgCacheService {
19
19
  del(key: string, namespaced?: boolean): Promise<void>;
20
20
  reset(): Promise<void>;
21
21
  protected getPrefix(key: string, namespaced: boolean): string;
22
+ protected safeKey(key: string): string;
22
23
  }
23
24
  export {};
@@ -3,6 +3,7 @@ var GgCacheService_1;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.GgCacheService = void 0;
5
5
  const tslib_1 = require("tslib");
6
+ const crypto_1 = require("crypto");
6
7
  const cache_manager_1 = require("@nestjs/cache-manager");
7
8
  const common_1 = require("@nestjs/common");
8
9
  const luxon_1 = require("luxon");
@@ -20,23 +21,39 @@ let GgCacheService = GgCacheService_1 = class GgCacheService {
20
21
  async get(key, namespaced = true) {
21
22
  key = this.getPrefix(key, namespaced);
22
23
  this.logger.debug({ message: `Attempt to get value`, key });
23
- const value = await this.cacheManager.get(key);
24
- if (value)
25
- this.logger.debug({ message: 'Cache hit', key });
26
- if (!value)
27
- this.logger.debug({ message: 'Cache miss', key });
28
- return value;
24
+ try {
25
+ const value = await this.cacheManager.get(key);
26
+ if (value)
27
+ this.logger.debug({ message: 'Cache hit', key });
28
+ if (!value)
29
+ this.logger.debug({ message: 'Cache miss', key });
30
+ return value;
31
+ }
32
+ catch (err) {
33
+ this.logger.warn({ message: 'Cache get failed, treating as miss', key: this.safeKey(key), err: err.message });
34
+ return undefined;
35
+ }
29
36
  }
30
- set(key, value, options) {
37
+ async set(key, value, options) {
31
38
  options = { ...defaultCacheOptions, ...options };
32
39
  key = this.getPrefix(key, options.namespaced);
33
40
  this.logger.debug({ message: `Set cache value`, key });
34
- return this.cacheManager.set(key, value, options.ttl.as('milliseconds'));
41
+ try {
42
+ await this.cacheManager.set(key, value, options.ttl.as('milliseconds'));
43
+ }
44
+ catch (err) {
45
+ this.logger.warn({ message: 'Cache set failed, skipping', key: this.safeKey(key), err: err.message });
46
+ }
35
47
  }
36
- del(key, namespaced = true) {
48
+ async del(key, namespaced = true) {
37
49
  key = this.getPrefix(key, namespaced);
38
50
  this.logger.debug({ message: 'Cache value deleted', key });
39
- return this.cacheManager.del(key);
51
+ try {
52
+ await this.cacheManager.del(key);
53
+ }
54
+ catch (err) {
55
+ this.logger.warn({ message: 'Cache del failed, skipping', key: this.safeKey(key), err: err.message });
56
+ }
40
57
  }
41
58
  reset() {
42
59
  this.logger.warn('ALL CACHE DATA HAS BEEN DELETED');
@@ -47,6 +64,16 @@ let GgCacheService = GgCacheService_1 = class GgCacheService {
47
64
  return `${this.appConf.name}:cache:${key}`;
48
65
  return key;
49
66
  }
67
+ // Temporary: GgBearerAuthService caches under `auth:${rawJwt}` (namespaced: false),
68
+ // so warn-level failure logs would otherwise leak bearer tokens into log aggregation.
69
+ // Drop once auth-service stops using the JWT itself as the cache key.
70
+ safeKey(key) {
71
+ const sep = key.lastIndexOf(':');
72
+ const prefix = sep === -1 ? '' : key.slice(0, sep + 1);
73
+ const tail = sep === -1 ? key : key.slice(sep + 1);
74
+ const hash = (0, crypto_1.createHash)('sha256').update(tail).digest('hex').slice(0, 8);
75
+ return `${prefix}${hash}`;
76
+ }
50
77
  };
51
78
  exports.GgCacheService = GgCacheService;
52
79
  exports.GgCacheService = GgCacheService = GgCacheService_1 = tslib_1.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"gg-cache.service.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-cache/gg-cache.service.ts"],"names":[],"mappings":";;;;;AAAA,yDAAsD;AACtD,2CAA4D;AAG5D,iCAAiC;AACjC,4CAAyC;AAOzC,MAAM,mBAAmB,GAAiB,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,gBAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;AAEzG;;GAEG;AAEI,IAAM,cAAc,sBAApB,MAAM,cAAc;IAGzB,YACyB,OAAsD,EACtD,YAA2B;QADV,YAAO,GAAP,OAAO,CAA8B;QAC9C,iBAAY,GAAZ,YAAY,CAAO;QAJnC,WAAM,GAAG,IAAI,eAAM,CAAC,gBAAc,CAAC,IAAI,CAAC,CAAC;IAKvD,CAAC;IAEG,KAAK,CAAC,GAAG,CAAI,GAAW,EAAE,UAAU,GAAG,IAAI;QAChD,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAEtC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC;QAE5D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAI,GAAG,CAAC,CAAC;QAElD,IAAI,KAAK;YAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC;QAE9D,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,GAAG,CAAC,GAAW,EAAE,KAAc,EAAE,OAAsB;QAC5D,OAAO,GAAG,EAAE,GAAG,mBAAmB,EAAE,GAAG,OAAO,EAAE,CAAC;QAEjD,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QAE9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC;QAEvD,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3E,CAAC;IAEM,GAAG,CAAC,GAAW,EAAE,UAAU,GAAG,IAAI;QACvC,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAEtC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,qBAAqB,EAAE,GAAG,EAAE,CAAC,CAAC;QAE3D,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;IAEM,KAAK;QACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAEpD,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAES,SAAS,CAAC,GAAW,EAAE,UAAmB;QAClD,IAAI,UAAU;YAAE,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,GAAG,EAAE,CAAC;QAE3D,OAAO,GAAG,CAAC;IACb,CAAC;CACF,CAAA;AAlDY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;IAKR,mBAAA,IAAA,eAAM,EAAC,qBAAS,CAAC,GAAG,CAAC,CAAA;IACrB,mBAAA,IAAA,eAAM,EAAC,6BAAa,CAAC,CAAA;;GALb,cAAc,CAkD1B"}
1
+ {"version":3,"file":"gg-cache.service.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-cache/gg-cache.service.ts"],"names":[],"mappings":"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"}
@@ -37,4 +37,5 @@ export declare class GgExceptionService {
37
37
  private getDomainCode;
38
38
  private getRPCDomainCode;
39
39
  private isAxiosError;
40
+ private logException;
40
41
  }
@@ -34,19 +34,24 @@ let GgExceptionService = GgExceptionService_1 = class GgExceptionService {
34
34
  statusCode = 500;
35
35
  domainCode = `${this.errorsOptions.domain}-0`;
36
36
  body = this.getBodyForInternalError(domainCode, request, statusCode, new common_1.InternalServerErrorException('Internal server error'));
37
- this.logger.error({ error: exception, msg: exception.message });
37
+ this.logger.error({ msg: exception.message, err: exception });
38
38
  }
39
39
  if (exception instanceof common_1.HttpException || exception instanceof gg_exception_1.GgException) {
40
40
  statusCode = exception.getStatus();
41
41
  domainCode = `${this.errorsOptions.domain}-${this.getDomainCode(exception)}`;
42
42
  body = this.getBodyForInternalError(domainCode, request, statusCode, exception);
43
- this.logger.error({ error: exception, msg: exception.getResponse() });
43
+ // `GgException` shadows the inherited `Error.message` with a `protected` field; cast for access.
44
+ this.logException(statusCode, {
45
+ msg: exception.message,
46
+ err: exception,
47
+ response: exception.getResponse(),
48
+ });
44
49
  }
45
50
  if (this.isAxiosError(exception)) {
46
51
  statusCode = (0, lodash_1.get)(exception, 'response.status', common_1.HttpStatus.INTERNAL_SERVER_ERROR);
47
52
  domainCode = (0, lodash_1.get)(exception, 'response.data.domainCode', 'GGGE');
48
53
  body = (0, lodash_1.get)(exception, 'response.data', this.getBodyForBaseError(domainCode, request, statusCode, exception));
49
- this.logger.error({ error: exception, msg: body });
54
+ this.logException(statusCode, { msg: exception.message, err: exception, response: body });
50
55
  }
51
56
  if ((!statusCode || !body) && exception instanceof Error && !(0, lodash_1.isPlainObject)(exception)) {
52
57
  statusCode = common_1.HttpStatus.INTERNAL_SERVER_ERROR;
@@ -170,6 +175,11 @@ let GgExceptionService = GgExceptionService_1 = class GgExceptionService {
170
175
  isAxiosError(error) {
171
176
  return error.isAxiosError;
172
177
  }
178
+ // 4xx are expected operational outcomes (validation, auth, missing entities); 5xx are real faults.
179
+ logException(statusCode, payload) {
180
+ const level = statusCode >= common_1.HttpStatus.INTERNAL_SERVER_ERROR ? 'error' : 'warn';
181
+ this.logger[level](payload);
182
+ }
173
183
  };
174
184
  exports.GgExceptionService = GgExceptionService;
175
185
  exports.GgExceptionService = GgExceptionService = GgExceptionService_1 = tslib_1.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"gg-exception.service.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-errors/gg-exception.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gg-exception.service.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-errors/gg-exception.service.ts"],"names":[],"mappings":";;;;;AAAA,2CAUwB;AAGxB,yDAAqD;AAGrD,mCAA2D;AAC3D,+BAA0B;AAE1B,0CAAkD;AAClD,wCAA4C;AAC5C,qEAAgE;AAChE,4DAAwD;AACxD,yEAA6F;AAKtF,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAG7B,YAC0C,aAA+C,EACtE,IAAoB;QADoB,kBAAa,GAAb,aAAa,CAAiB;QACtE,SAAI,GAAJ,IAAI,CAAgB;QAJtB,WAAM,GAAG,IAAI,eAAM,CAAC,oBAAkB,CAAC,IAAI,CAAC,CAAC;IAK3D,CAAC;IAEG,UAAU,CAAC,iBAAoC,EAAE,SAAS;QAC/D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,EAAY,CAAC;QAC3D,MAAM,OAAO,GAAG,iBAAiB,CAAC,UAAU,EAAW,CAAC;QAExD,IAAI,IAA6B,CAAC;QAClC,IAAI,UAAsB,CAAC;QAC3B,IAAI,UAAkB,CAAC;QAEvB,IAAI,IAAA,sBAAa,EAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,yBAAyB,EAAE,CAAC,CAAC;YAEtD,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC;YACvB,UAAU,GAAG,IAAA,YAAG,EAAC,SAAS,EAAE,kBAAkB,EAAE,mBAAU,CAAC,qBAAqB,CAAC,CAAC;QACpF,CAAC;QAED,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAE/C,IAAI,SAAS,YAAY,sBAAe,EAAE,CAAC;YACzC,UAAU,GAAG,GAAG,CAAC;YACjB,UAAU,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC;YAE9C,IAAI,GAAG,IAAI,CAAC,uBAAuB,CACjC,UAAU,EACV,OAAO,EACP,UAAU,EACV,IAAI,qCAA4B,CAAC,uBAAuB,CAAC,CAC1D,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,SAAS,YAAY,sBAAa,IAAI,SAAS,YAAY,0BAAW,EAAE,CAAC;YAC3E,UAAU,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC;YACnC,UAAU,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;YAE7E,IAAI,GAAG,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;YAChF,iGAAiG;YACjG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE;gBAC5B,GAAG,EAAG,SAAmB,CAAC,OAAO;gBACjC,GAAG,EAAE,SAAS;gBACd,QAAQ,EAAE,SAAS,CAAC,WAAW,EAAE;aAClC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,UAAU,GAAG,IAAA,YAAG,EAAC,SAAS,EAAE,iBAAiB,EAAE,mBAAU,CAAC,qBAAqB,CAAC,CAAC;YACjF,UAAU,GAAG,IAAA,YAAG,EAAC,SAAS,EAAE,0BAA0B,EAAE,MAAM,CAAC,CAAC;YAEhE,IAAI,GAAG,IAAA,YAAG,EACR,SAAS,EACT,eAAe,EACf,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,SAAkB,CAAC,CACnD,CAAC;YAE7B,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5F,CAAC;QAED,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,YAAY,KAAK,IAAI,CAAC,IAAA,sBAAa,EAAC,SAAS,CAAC,EAAE,CAAC;YACtF,UAAU,GAAG,mBAAU,CAAC,qBAAqB,CAAC;YAC9C,UAAU,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,6CAAoB,CAAC,OAAO,EAAE,CAAC;YAE5E,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,SAAkB,CAAC,CAAC;YACrF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,IAAA,iBAAQ,EAAC,SAAS,CAAC,EAAE,CAAC;YACxB,UAAU,GAAG,mBAAU,CAAC,iBAAiB,CAAC;YAC1C,UAAU,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,6CAAoB,CAAC,OAAO,EAAE,CAAC;YAE5E,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,SAAkB,CAAC,CAAC;YACrF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACI,SAAS,CAAC,gBAAkC,EAAE,SAA+B;QAClF,MAAM,UAAU,GAAG,IAAA,YAAG,EAAC,SAAS,EAAE,QAAQ,EAAE,mBAAU,CAAC,qBAAqB,CAAC,CAAC;QAC9E,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;QAEtF,MAAM,SAAS,GAAG,IAAA,YAAG,EAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,UAAU,EAAE,EAAE,+BAA+B,EAAE,IAAA,SAAE,GAAE,CAAC,CAAC;QACzG,MAAM,SAAS,GAAG,IAAA,YAAG,EAAC,gBAAgB,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAEvE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;QAEjF,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAE9F,OAAO,IAAI,4BAAY,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAEO,uBAAuB,CAC7B,UAAkB,EAClB,OAAgB,EAChB,UAAsB,EACtB,SAAsC;QAEtC,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM;YACjC,IAAI,EAAE,UAAU;YAChB,UAAU;YACV,IAAI,EAAE,OAAO,CAAC,GAAG;YACjB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,SAAS,EAAE,IAAA,YAAG,EAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC;YACnC,OAAO,EAAE,IAAA,iBAAQ,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,YAAG,EAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,CAAC;YAClF,UAAU,EAAE,IAAA,YAAG,EAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC;SAC/C,CAAC;IACJ,CAAC;IAEO,kBAAkB,CACxB,UAAkB,EAClB,UAAsB,EACtB,SAAiB,EACjB,SAAiB,EACjB,SAA+B;QAE/B,IAAI,eAAe,GACjB,IAAA,YAAG,EAAC,SAAS,EAAE,wBAAwB,CAAC;YACxC,IAAA,YAAG,EAAC,SAAS,EAAE,kBAAkB,CAAC;YAClC,IAAA,YAAG,EAAC,SAAS,EAAE,SAAS,CAAC;YACzB,wBAAwB,CAAC;QAE3B,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAChB,GAAG,EAAE,yBAAyB;gBAC9B,MAAM,EAAE,eAAe;gBACvB,KAAK,EAAE,SAAS,CAAC,KAAK;aACvB,CAAC,CAAC;YAEH,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QACpD,CAAC;QAED,gCAAgC;QAChC,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM;YACjC,IAAI,EAAE,UAAU;YAChB,UAAU;YACV,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,eAAe;SACzB,CAAC;IACJ,CAAC;IAEO,mBAAmB,CAAC,UAAkB,EAAE,OAAgB,EAAE,UAAsB,EAAE,SAAgB;QACxG,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM;YACjC,IAAI,EAAE,UAAU;YAChB,UAAU;YACV,IAAI,EAAE,OAAO,CAAC,GAAG;YACjB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,SAAS,EAAE,IAAA,YAAG,EAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC;YACnC,OAAO,EAAE,IAAA,iBAAQ,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,YAAG,EAAC,SAAS,EAAE,SAAS,CAAC;SACrE,CAAC;IACJ,CAAC;IAEO,kBAAkB,CAAC,SAAmD;QAC5E,IAAI,SAAS,YAAY,sBAAa,IAAI,SAAS,YAAY,0BAAW,EAAE,CAAC;YAC3E,IAAA,YAAG,EAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,aAAa,CAAC,SAAsC;QAC1D,IAAI,SAAS,YAAY,0BAAiB;YAAE,OAAO,6CAAoB,CAAC,QAAQ,CAAC;QACjF,IAAI,SAAS,YAAY,8BAAqB;YAAE,OAAO,6CAAoB,CAAC,YAAY,CAAC;QACzF,IAAI,SAAS,YAAY,4BAAmB;YAAE,OAAO,6CAAoB,CAAC,UAAU,CAAC;QAErF,IAAI,SAAS,YAAY,0BAAW;YAAE,OAAO,SAAS,CAAC,aAAa,EAAE,CAAC;QAEvE,OAAO,6CAAoB,CAAC,OAAO,CAAC;IACtC,CAAC;IAEO,gBAAgB,CAAC,SAA+B;QACtD,IAAI,CAAC,IAAA,YAAG,EAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC;YAAE,OAAO,6CAAoB,CAAC,OAAO,CAAC;QAE1E,IAAI,IAAA,YAAG,EAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,mBAAU,CAAC,SAAS;YAAE,OAAO,6CAAoB,CAAC,QAAQ,CAAC;QAC5F,IAAI,IAAA,YAAG,EAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,mBAAU,CAAC,YAAY;YAAE,OAAO,6CAAoB,CAAC,YAAY,CAAC;QACnG,IAAI,IAAA,YAAG,EAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,mBAAU,CAAC,WAAW;YAAE,OAAO,6CAAoB,CAAC,UAAU,CAAC;QAEhG,0EAA0E;QAE1E,OAAO,6CAAoB,CAAC,OAAO,CAAC;IACtC,CAAC;IAEO,YAAY,CAAC,KAAiB;QACpC,OAAO,KAAK,CAAC,YAAY,CAAC;IAC5B,CAAC;IAED,mGAAmG;IAC3F,YAAY,CAAC,UAAsB,EAAE,OAAyD;QACpG,MAAM,KAAK,GAAG,UAAU,IAAI,mBAAU,CAAC,qBAAqB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QAChF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;CACF,CAAA;AA9NY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;IAKR,mBAAA,IAAA,eAAM,EAAC,yDAA8B,CAAC,CAAA;qDAChB,wBAAc;GAL5B,kBAAkB,CA8N9B"}
@@ -6,6 +6,14 @@ const tslib_1 = require("tslib");
6
6
  const common_1 = require("@nestjs/common");
7
7
  const nestjs_pino_1 = require("nestjs-pino");
8
8
  const gg_config_1 = require("../gg-config");
9
+ const PINO_LEVEL_TO_GCP_SEVERITY = {
10
+ trace: 'DEBUG',
11
+ debug: 'DEBUG',
12
+ info: 'INFO',
13
+ warn: 'WARNING',
14
+ error: 'ERROR',
15
+ fatal: 'CRITICAL',
16
+ };
9
17
  let GgLoggerModule = GgLoggerModule_1 = class GgLoggerModule {
10
18
  static forRoot() {
11
19
  return {
@@ -17,12 +25,24 @@ let GgLoggerModule = GgLoggerModule_1 = class GgLoggerModule {
17
25
  const name = appConf.name;
18
26
  const level = appConf.logLevel;
19
27
  const autoLogging = false;
20
- const transport = appConf.logFormat === 'pretty'
28
+ const isPrettyMode = appConf.logFormat === 'pretty';
29
+ const transport = isPrettyMode
21
30
  ? {
22
31
  target: 'pino-pretty',
23
32
  options: { singleLine: true, colorize: true, colorizeObjects: true, levelFirst: true },
24
33
  }
25
34
  : undefined;
35
+ // GCP Cloud Logging promotes a top-level `severity` string to the entry severity;
36
+ // without it every record shows as DEFAULT. Skip in pretty mode to avoid duplicating
37
+ // the level that pino-pretty already prints.
38
+ const formatters = isPrettyMode
39
+ ? undefined
40
+ : {
41
+ level: (label, number) => ({
42
+ severity: PINO_LEVEL_TO_GCP_SEVERITY[label] ?? 'DEFAULT',
43
+ level: number,
44
+ }),
45
+ };
26
46
  return {
27
47
  exclude: ['/health', '/metrics'],
28
48
  pinoHttp: {
@@ -30,6 +50,7 @@ let GgLoggerModule = GgLoggerModule_1 = class GgLoggerModule {
30
50
  level,
31
51
  transport,
32
52
  autoLogging,
53
+ formatters,
33
54
  serializers: {
34
55
  req: (req) => ({ id: req.id, method: req.method, url: req.url }),
35
56
  },
@@ -1 +1 @@
1
- {"version":3,"file":"gg-logger.module.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-logger/gg-logger.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAAuD;AAEvD,6CAA2C;AAC3C,4CAAyC;AAGlC,IAAM,cAAc,sBAApB,MAAM,cAAc;IAClB,MAAM,CAAC,OAAO;QACnB,OAAO;YACL,MAAM,EAAE,gBAAc;YACtB,OAAO,EAAE;gBACP,0BAAY,CAAC,YAAY,CAAC;oBACxB,MAAM,EAAE,CAAC,qBAAS,CAAC,GAAG,CAAC;oBACvB,UAAU,EAAE,CAAC,OAAqC,EAAE,EAAE;wBACpD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;wBAC1B,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC;wBAC/B,MAAM,WAAW,GAAG,KAAK,CAAC;wBAE1B,MAAM,SAAS,GACb,OAAO,CAAC,SAAS,KAAK,QAAQ;4BAC5B,CAAC,CAAC;gCACE,MAAM,EAAE,aAAa;gCACrB,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;6BACvF;4BACH,CAAC,CAAC,SAAS,CAAC;wBAEhB,OAAO;4BACL,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;4BAChC,QAAQ,EAAE;gCACR,IAAI;gCACJ,KAAK;gCACL,SAAS;gCACT,WAAW;gCACX,WAAW,EAAE;oCACX,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;iCACjE;6BACF;yBACF,CAAC;oBACJ,CAAC;iBACF,CAAC;aACH;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AArCY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,cAAc,CAqC1B"}
1
+ {"version":3,"file":"gg-logger.module.js","sourceRoot":"","sources":["../../../../../libs/gg-core/src/gg-logger/gg-logger.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAAuD;AAEvD,6CAA2C;AAC3C,4CAAyC;AAEzC,MAAM,0BAA0B,GAA2B;IACzD,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,UAAU;CAClB,CAAC;AAGK,IAAM,cAAc,sBAApB,MAAM,cAAc;IAClB,MAAM,CAAC,OAAO;QACnB,OAAO;YACL,MAAM,EAAE,gBAAc;YACtB,OAAO,EAAE;gBACP,0BAAY,CAAC,YAAY,CAAC;oBACxB,MAAM,EAAE,CAAC,qBAAS,CAAC,GAAG,CAAC;oBACvB,UAAU,EAAE,CAAC,OAAqC,EAAE,EAAE;wBACpD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;wBAC1B,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC;wBAC/B,MAAM,WAAW,GAAG,KAAK,CAAC;wBAC1B,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,KAAK,QAAQ,CAAC;wBAEpD,MAAM,SAAS,GAAG,YAAY;4BAC5B,CAAC,CAAC;gCACE,MAAM,EAAE,aAAa;gCACrB,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;6BACvF;4BACH,CAAC,CAAC,SAAS,CAAC;wBAEd,kFAAkF;wBAClF,qFAAqF;wBACrF,6CAA6C;wBAC7C,MAAM,UAAU,GAAG,YAAY;4BAC7B,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC;gCACE,KAAK,EAAE,CAAC,KAAa,EAAE,MAAc,EAAE,EAAE,CAAC,CAAC;oCACzC,QAAQ,EAAE,0BAA0B,CAAC,KAAK,CAAC,IAAI,SAAS;oCACxD,KAAK,EAAE,MAAM;iCACd,CAAC;6BACH,CAAC;wBAEN,OAAO;4BACL,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;4BAChC,QAAQ,EAAE;gCACR,IAAI;gCACJ,KAAK;gCACL,SAAS;gCACT,WAAW;gCACX,UAAU;gCACV,WAAW,EAAE;oCACX,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;iCACjE;6BACF;yBACF,CAAC;oBACJ,CAAC;iBACF,CAAC;aACH;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAlDY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,cAAc,CAkD1B"}