@yolo-croket-dev/core 1.9.7-slowquery.9 → 1.9.7

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.
@@ -0,0 +1 @@
1
+ export declare const GrpcParam: (...dataOrPipes: unknown[]) => ParameterDecorator;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GrpcParam = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ exports.GrpcParam = (0, common_1.createParamDecorator)((data, ctx) => {
6
+ const metadata = ctx.switchToRpc().getContext();
7
+ const param = metadata.get('param');
8
+ if (!param || !param[0]) {
9
+ return null;
10
+ }
11
+ return JSON.parse(param[0]);
12
+ });
@@ -1,2 +1,3 @@
1
1
  export * from './rpc-interceptor-scope.decorator';
2
2
  export * from './rpc-transform.decorator';
3
+ export * from './grpc-param.decorator';
@@ -16,3 +16,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./rpc-interceptor-scope.decorator"), exports);
18
18
  __exportStar(require("./rpc-transform.decorator"), exports);
19
+ __exportStar(require("./grpc-param.decorator"), exports);
@@ -41,12 +41,6 @@ const operators_1 = require("rxjs/operators");
41
41
  const dd_trace_1 = __importDefault(require("dd-trace"));
42
42
  const { SERVER_NAME } = process.env;
43
43
  const msaLogger = new msa_logger_1.default(msa_logger_1.ServerTypeEnum.SERVICE);
44
- // interface IContent {
45
- // pattern: string;
46
- // data: IRequest;
47
- // /** 무슨 아이디인지 모르겠음 */
48
- // id: string;
49
- // }
50
44
  const MAX_CUT_LENGTH = 500;
51
45
  dd_trace_1.default.init();
52
46
  let LoggingServiceInterceptor = class LoggingServiceInterceptor {
@@ -89,24 +83,16 @@ let LoggingServiceInterceptor = class LoggingServiceInterceptor {
89
83
  const metadata = args[1];
90
84
  const isGrpc = !rmqContext.getMessage;
91
85
  let param;
92
- let pastFrom;
93
- let pastFroms;
94
86
  let originalMessage;
95
87
  let pattern; /** @xxx: Grpc: path , Mq: 메시지 패턴명 */
96
88
  let payload;
97
- let pastFromForMetadata;
98
- let pastFromsForMetadata;
99
- let pastFromForMessage;
100
- let pastFromsForMessage;
101
89
  if (isGrpc) {
102
- param = metadata.get('param') || {
90
+ param = JSON.parse(metadata.get('param')[0] || {
103
91
  param: {
104
92
  from: '-',
105
93
  froms: '-',
106
94
  },
107
- };
108
- pastFromForMetadata = metadata.get('from') || '-';
109
- pastFromsForMetadata = metadata.get('froms') || [pastFrom];
95
+ });
110
96
  originalMessage = args[0];
111
97
  const gRPCArg = args[2];
112
98
  pattern = gRPCArg.path;
@@ -114,49 +100,26 @@ let LoggingServiceInterceptor = class LoggingServiceInterceptor {
114
100
  }
115
101
  else {
116
102
  param = data.param;
117
- pastFromForMessage = param.from ? JSON.parse(JSON.stringify(param.from)) : '-';
118
- pastFromsForMessage = param.froms ? JSON.parse(JSON.stringify(param.froms)) : [pastFrom];
119
103
  originalMessage = rmqContext.getMessage();
120
- pattern = originalMessage.messagePattern;
121
- // const originalcontent = originalMessage.content;
122
- // const content = JSON.parse(originalcontent.toString()) as IContent;
123
- payload = context.switchToHttp().getRequest().data;
124
- }
125
- // @TODO: 삭제
126
- if (pastFromForMetadata && pastFromsForMetadata) {
127
- pastFrom = [
128
- ...(pastFromForMessage || []),
129
- ...(pastFromForMetadata || []),
130
- ];
131
- pastFroms = [
132
- ...(pastFromsForMessage || []),
133
- ...(pastFromsForMetadata || []),
134
- ];
135
- }
136
- else if (pastFromForMessage && pastFromsForMessage) {
137
- pastFrom = [
138
- ...(pastFromForMetadata || []),
139
- ...(pastFromForMessage || []),
140
- ];
141
- pastFroms = [
142
- ...(pastFromsForMetadata || []),
143
- ...(pastFromsForMessage || []),
144
- ];
104
+ const originalcontent = originalMessage.content;
105
+ const content = JSON.parse(originalcontent.toString());
106
+ pattern = content.pattern;
107
+ payload = context.switchToHttp().getRequest().payload;
145
108
  }
146
- // const pastFrom = data.param.from ? JSON.parse(JSON.stringify(data.param.from)) : '-';
147
- // const pastFroms = data.param.froms ? JSON.parse(JSON.stringify(data.param.froms)) : [pastFrom];
148
- // const originalMessage = rmqContext.getMessage();
149
- // const ctx = context.switchToHttp();
150
- // const request = ctx.getRequest() as IRequest;
151
109
  const pastParam = JSON.parse(JSON.stringify(param));
110
+ const pastFrom = pastParam.from || '-';
111
+ const pastFroms = pastParam.froms || [pastFrom];
152
112
  const traceId = param ? param.traceId : '-';
153
113
  /** from 변경 */
154
114
  const tmpFrom = `${SERVER_NAME}: ${pattern}`;
155
115
  const tmpFroms = JSON.parse(JSON.stringify(pastFroms));
156
116
  tmpFroms.push(tmpFrom);
157
117
  if (isGrpc) {
158
- metadata.set('from', JSON.stringify(tmpFrom));
159
- metadata.set('froms', JSON.stringify(tmpFroms));
118
+ metadata.set('param', JSON.stringify({
119
+ ...pastParam,
120
+ from: tmpFrom,
121
+ froms: tmpFroms,
122
+ }));
160
123
  }
161
124
  else {
162
125
  data.param.from = tmpFrom;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yolo-croket-dev/core",
3
- "version": "1.9.7-slowquery.9",
3
+ "version": "1.9.7",
4
4
  "author": "Yolo Co., Ltd.",
5
5
  "description": "Yolo commonization module",
6
6
  "main": "index.js",
package/util.d.ts CHANGED
@@ -1 +1,3 @@
1
1
  export declare function generateRandom(length: number, charset?: string): string;
2
+ /** host에서 port를 추출합니다. */
3
+ export declare function getPortFromHost(host: string): number | undefined;
package/util.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateRandom = void 0;
3
+ exports.getPortFromHost = exports.generateRandom = void 0;
4
4
  const randomstring_1 = require("randomstring");
5
5
  function generateRandom(length, charset) {
6
6
  return (0, randomstring_1.generate)({
@@ -9,3 +9,9 @@ function generateRandom(length, charset) {
9
9
  });
10
10
  }
11
11
  exports.generateRandom = generateRandom;
12
+ /** host에서 port를 추출합니다. */
13
+ function getPortFromHost(host) {
14
+ const port = host.split(':')[1];
15
+ return port ? parseInt(port, 10) : undefined;
16
+ }
17
+ exports.getPortFromHost = getPortFromHost;