@loadmill/executer 0.1.94 → 0.1.95

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/dist/grpc.d.ts ADDED
@@ -0,0 +1,34 @@
1
+ /// <reference types="node" />
2
+ import { IncomingHttpHeaders } from 'http';
3
+ import { HttpResponseStatus, LoadmillHeaders } from '@loadmill/core/dist/request';
4
+ export declare class GRPCRequest {
5
+ private readonly grpcRequestArgs;
6
+ private readonly onError;
7
+ private readonly protoFile;
8
+ url: string;
9
+ expectedStatus: HttpResponseStatus;
10
+ constructor(grpcRequestArgs: GRPCRequestArguments, onError: (e: any) => void, protoFile: protobuf.IParserResult);
11
+ ok(cb: (response: GRPCResponse, isExpectedStatus?: (request: any, status: number) => boolean) => boolean): Promise<GRPCResponse | undefined>;
12
+ on(_eventName: string, _cb: Function): void;
13
+ }
14
+ export declare type GRPCRequestArguments = {
15
+ expectedStatus: HttpResponseStatus;
16
+ headers: LoadmillHeaders;
17
+ message: string;
18
+ timeout: number;
19
+ domain: string;
20
+ service: string;
21
+ method: string;
22
+ url: string;
23
+ };
24
+ declare type GRPCResponse = {
25
+ status?: number;
26
+ res: {
27
+ statusMessage?: string;
28
+ };
29
+ header: LoadmillHeaders | IncomingHttpHeaders;
30
+ req: {};
31
+ text: string;
32
+ type?: string;
33
+ };
34
+ export {};
package/dist/grpc.js ADDED
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23
+ return new (P || (P = Promise))(function (resolve, reject) {
24
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
28
+ });
29
+ };
30
+ var __generator = (this && this.__generator) || function (thisArg, body) {
31
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
32
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
33
+ function verb(n) { return function (v) { return step([n, v]); }; }
34
+ function step(op) {
35
+ if (f) throw new TypeError("Generator is already executing.");
36
+ while (_) try {
37
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
38
+ if (y = 0, t) op = [op[0] & 2, t.value];
39
+ switch (op[0]) {
40
+ case 0: case 1: t = op; break;
41
+ case 4: _.label++; return { value: op[1], done: false };
42
+ case 5: _.label++; y = op[1]; op = [0]; continue;
43
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
44
+ default:
45
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
46
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
47
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
48
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
49
+ if (t[2]) _.ops.pop();
50
+ _.trys.pop(); continue;
51
+ }
52
+ op = body.call(thisArg, _);
53
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
54
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
55
+ }
56
+ };
57
+ var __importDefault = (this && this.__importDefault) || function (mod) {
58
+ return (mod && mod.__esModule) ? mod : { "default": mod };
59
+ };
60
+ Object.defineProperty(exports, "__esModule", { value: true });
61
+ exports.GRPCRequest = void 0;
62
+ var util_1 = require("util");
63
+ var grpc = __importStar(require("@grpc/grpc-js"));
64
+ var protoLoader = __importStar(require("@grpc/proto-loader"));
65
+ var request_1 = require("@loadmill/core/dist/request");
66
+ var log_1 = __importDefault(require("@loadmill/universal/dist/log"));
67
+ var errors_1 = require("./errors");
68
+ var options = {
69
+ keepCase: true,
70
+ longs: String,
71
+ enums: String,
72
+ defaults: true,
73
+ oneofs: true,
74
+ };
75
+ var GRPCRequest = /** @class */ (function () {
76
+ function GRPCRequest(grpcRequestArgs, onError, protoFile) {
77
+ Object.defineProperty(this, "grpcRequestArgs", {
78
+ enumerable: true,
79
+ configurable: true,
80
+ writable: true,
81
+ value: grpcRequestArgs
82
+ });
83
+ Object.defineProperty(this, "onError", {
84
+ enumerable: true,
85
+ configurable: true,
86
+ writable: true,
87
+ value: onError
88
+ });
89
+ Object.defineProperty(this, "protoFile", {
90
+ enumerable: true,
91
+ configurable: true,
92
+ writable: true,
93
+ value: protoFile
94
+ });
95
+ Object.defineProperty(this, "url", {
96
+ enumerable: true,
97
+ configurable: true,
98
+ writable: true,
99
+ value: void 0
100
+ });
101
+ Object.defineProperty(this, "expectedStatus", {
102
+ enumerable: true,
103
+ configurable: true,
104
+ writable: true,
105
+ value: void 0
106
+ });
107
+ this.expectedStatus = grpcRequestArgs.expectedStatus;
108
+ this.url = grpcRequestArgs.url;
109
+ }
110
+ Object.defineProperty(GRPCRequest.prototype, "ok", {
111
+ enumerable: false,
112
+ configurable: true,
113
+ writable: true,
114
+ value: function (cb) {
115
+ return __awaiter(this, void 0, void 0, function () {
116
+ var response, packageDefinition, protoDescriptor, Service, client, call, msg, metadata, _i, _a, _b, key, value, res, e_1, isExpectedStatus, message, e_2;
117
+ var _c;
118
+ return __generator(this, function (_d) {
119
+ switch (_d.label) {
120
+ case 0:
121
+ _d.trys.push([0, 5, , 6]);
122
+ response = {
123
+ status: undefined,
124
+ res: {
125
+ statusMessage: undefined,
126
+ },
127
+ header: {},
128
+ req: {},
129
+ text: '',
130
+ };
131
+ packageDefinition = protoLoader.fromJSON(this.protoFile.root, options);
132
+ protoDescriptor = grpc.loadPackageDefinition(packageDefinition);
133
+ Service = protoDescriptor[this.grpcRequestArgs.service];
134
+ client = new Service(this.grpcRequestArgs.domain, grpc.credentials.createInsecure());
135
+ call = util_1.promisify(client[this.grpcRequestArgs.method].bind(client));
136
+ msg = JSON.parse(this.grpcRequestArgs.message || '{}');
137
+ metadata = new grpc.Metadata();
138
+ for (_i = 0, _a = Object.entries(this.grpcRequestArgs.headers); _i < _a.length; _i++) {
139
+ _b = _a[_i], key = _b[0], value = _b[1];
140
+ metadata.set(key, value);
141
+ }
142
+ _d.label = 1;
143
+ case 1:
144
+ _d.trys.push([1, 3, , 4]);
145
+ return [4 /*yield*/, call(msg, metadata, { deadline: Date.now() + this.grpcRequestArgs.timeout })];
146
+ case 2:
147
+ res = _d.sent();
148
+ response.status = grpc.status.OK;
149
+ response.text = JSON.stringify(res);
150
+ response.type = 'application/json';
151
+ response.res.statusMessage = 'OK';
152
+ return [3 /*break*/, 4];
153
+ case 3:
154
+ e_1 = _d.sent();
155
+ response.status = e_1.code;
156
+ response.res.statusMessage = e_1.details;
157
+ return [3 /*break*/, 4];
158
+ case 4:
159
+ client.close();
160
+ isExpectedStatus = cb(response, _isExpectedGRPCStatus);
161
+ if (!isExpectedStatus) {
162
+ message = "gRPC status " + response.status + " - " + response.res.statusMessage;
163
+ this.onError(new errors_1.RequestFailuresError(message, (_c = {}, _c[message] = 1, _c)));
164
+ }
165
+ return [2 /*return*/, response];
166
+ case 5:
167
+ e_2 = _d.sent();
168
+ this.onError(e_2);
169
+ return [3 /*break*/, 6];
170
+ case 6: return [2 /*return*/];
171
+ }
172
+ });
173
+ });
174
+ }
175
+ });
176
+ // need this because the SequenceExecutor expectes a request obj with on func prop
177
+ Object.defineProperty(GRPCRequest.prototype, "on", {
178
+ enumerable: false,
179
+ configurable: true,
180
+ writable: true,
181
+ value: function (_eventName, _cb) {
182
+ //do nothing
183
+ }
184
+ });
185
+ return GRPCRequest;
186
+ }());
187
+ exports.GRPCRequest = GRPCRequest;
188
+ var _isExpectedGRPCStatus = function (_a, status) {
189
+ var expectedStatus = _a.expectedStatus, url = _a.url;
190
+ if (expectedStatus === request_1.ALLOWED_RESPONSE_STATUSES.SUCCESS) {
191
+ return status === grpc.status.OK;
192
+ }
193
+ else if (expectedStatus === request_1.ALLOWED_RESPONSE_STATUSES.ERROR) {
194
+ log_1.default.debug('user asked to fail this request', url);
195
+ return status !== grpc.status.OK;
196
+ }
197
+ else if (expectedStatus === request_1.ALLOWED_RESPONSE_STATUSES.ANY) {
198
+ return true;
199
+ }
200
+ log_1.default.warn('Expected status is not valid, expectedStatus');
201
+ return false;
202
+ };
203
+ //# sourceMappingURL=grpc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grpc.js","sourceRoot":"","sources":["../src/grpc.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.millVersionString = exports.millVersion = void 0;
4
4
  exports.millVersion = {
5
5
  major: 9,
6
- minor: 81,
6
+ minor: 82,
7
7
  patch: 0,
8
8
  };
9
9
  exports.millVersionString = exports.millVersion.major + "." + exports.millVersion.minor + "." + exports.millVersion.patch;
@@ -1,7 +1,7 @@
1
1
  import { Failures } from './failures';
2
2
  import { PerRequestStats } from './request-stats';
3
3
  import { Parameters } from '@loadmill/core/dist/parameters';
4
- import { LoadmillHeaders, LoadmillRequest, PostFormData, RequestPostData } from '@loadmill/core/dist/request';
4
+ import { GRPC, LoadmillHeaders, LoadmillRequest, PostFormData, RequestPostData } from '@loadmill/core/dist/request';
5
5
  import { CookiesDetails } from '@loadmill/core/dist/conf/types';
6
6
  export declare function extendSequenceResult(result: RequestSequenceResult, requests: LoadmillRequest[]): ExtendedSequenceResult;
7
7
  export interface ExtendedSequenceResult extends RequestSequenceResult {
@@ -23,6 +23,7 @@ export interface ResolvedRequest {
23
23
  headers?: LoadmillHeaders[];
24
24
  postData?: RequestPostData;
25
25
  postFormData?: PostFormData;
26
+ grpc?: GRPC;
26
27
  response?: RequestResponse;
27
28
  postParameters?: Parameters[];
28
29
  stdout?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"request-sequence-result.js","sourceRoot":"","sources":["../src/request-sequence-result.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAWA,SAAgB,oBAAoB,CAClC,MAA6B,EAC7B,QAA2B;IAE3B,6BACK,MAAM,KACT,gBAAgB,EAAE,QAAQ,CAAC,GAAG,CAAC,UAAC,OAAO,EAAE,KAAa,IAAK,OAAA,uBACtD,OAAO,GACP,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,EACjC,EAHyD,CAGzD,CAAC,IACH;AACJ,CAAC;AAXD,oDAWC"}
1
+ {"version":3,"file":"request-sequence-result.js","sourceRoot":"","sources":["../src/request-sequence-result.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAYA,SAAgB,oBAAoB,CAClC,MAA6B,EAC7B,QAA2B;IAE3B,6BACK,MAAM,KACT,gBAAgB,EAAE,QAAQ,CAAC,GAAG,CAAC,UAAC,OAAO,EAAE,KAAa,IAAK,OAAA,uBACtD,OAAO,GACP,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,EACjC,EAHyD,CAGzD,CAAC,IACH;AACJ,CAAC;AAXD,oDAWC"}
@@ -5,7 +5,7 @@ import { Parameters } from '@loadmill/core/dist/parameters';
5
5
  import { LoadmillRequest } from '@loadmill/core/dist/request';
6
6
  export declare const reqIdParamName = "loadmill-request-id";
7
7
  export declare const sequence: {
8
- execute(httpAgent: any, requests: LoadmillRequest[], parameters: Parameters[], domainsWhiteList: string[], sequenceOptions: SequenceOptions): Promise<{
8
+ execute(httpAgent: any, requests: LoadmillRequest[], parameters: Parameters[], domainsWhiteList: string[], sequenceOptions: SequenceOptions, protoFile?: import("protobufjs").IParserResult | undefined): Promise<{
9
9
  failures: Failures;
10
10
  avgResTime: number;
11
11
  requestStats: PerRequestStats;
package/dist/sequence.js CHANGED
@@ -113,18 +113,19 @@ var cookies_1 = require("./cookies");
113
113
  var console_log_1 = require("./post-script/console-log");
114
114
  var redact_data_1 = require("./redact-data");
115
115
  var post_sequence_1 = require("./post-sequence");
116
+ var grpc_1 = require("./grpc");
116
117
  exports.reqIdParamName = 'loadmill-request-id';
117
118
  var SOCKET_TIMEOUT = request_1.DEFAULT_REQUEST_TIMEOUT + 5000; // deafult + some extra
118
119
  var isPerformance = typeof performance !== 'undefined';
119
120
  log_1.default.debug('isPerformance =', isPerformance);
120
121
  exports.sequence = {
121
- execute: function (httpAgent, requests, parameters, domainsWhiteList, sequenceOptions) {
122
- var sequenceExecutor = new SequenceExecutor(httpAgent, parameters, domainsWhiteList, sequenceOptions);
122
+ execute: function (httpAgent, requests, parameters, domainsWhiteList, sequenceOptions, protoFile) {
123
+ var sequenceExecutor = new SequenceExecutor(httpAgent, parameters, domainsWhiteList, sequenceOptions, protoFile);
123
124
  return sequenceExecutor.startAndPass(requests);
124
125
  },
125
126
  };
126
127
  var SequenceExecutor = /** @class */ (function () {
127
- function SequenceExecutor(httpAgent, parameters, domainsWhiteList, _a) {
128
+ function SequenceExecutor(httpAgent, parameters, domainsWhiteList, _a, protoFile) {
128
129
  var _this = this;
129
130
  var increaseResSize = _a.increaseResSize, sequentialParameterPools = _a.sequentialParameterPools, sensitiveData = _a.sensitiveData, sensitiveKeys = _a.sensitiveKeys, metricsKeys = _a.metricsKeys;
130
131
  Object.defineProperty(this, "httpAgent", {
@@ -235,6 +236,12 @@ var SequenceExecutor = /** @class */ (function () {
235
236
  writable: true,
236
237
  value: void 0
237
238
  });
239
+ Object.defineProperty(this, "protoFile", {
240
+ enumerable: true,
241
+ configurable: true,
242
+ writable: true,
243
+ value: void 0
244
+ });
238
245
  Object.defineProperty(this, "passStats", {
239
246
  enumerable: true,
240
247
  configurable: true,
@@ -255,10 +262,10 @@ var SequenceExecutor = /** @class */ (function () {
255
262
  writable: true,
256
263
  value: function (_a, reqIndex) {
257
264
  var url = _a.url, headers = _a.headers, postData = _a.postData, _b = _a.timeout, timeout = _b === void 0 ? request_1.DEFAULT_REQUEST_TIMEOUT : _b, _c = _a.expectedStatus, expectedStatus = _c === void 0 ? 'SUCCESS' : _c;
258
- var preparedUrl = _this.prepareWsUrl(url, reqIndex);
265
+ var preparedUrl = _this.prepareUrl(url, reqIndex);
259
266
  // order matters. headers should be set after the message so we can use the message in headers
260
267
  var _d = _this.prepareWsMessage(postData, reqIndex), preparedMessage = _d.resolvedMessage, mimeType = _d.mimeType;
261
- var preparedHeaders = _this.prepareWsHeaders(headers, reqIndex);
268
+ var preparedHeaders = _this.prepareHeaders(headers, reqIndex);
262
269
  return {
263
270
  expectedStatus: expectedStatus,
264
271
  headers: preparedHeaders,
@@ -269,7 +276,7 @@ var SequenceExecutor = /** @class */ (function () {
269
276
  };
270
277
  }
271
278
  });
272
- Object.defineProperty(this, "prepareWsUrl", {
279
+ Object.defineProperty(this, "prepareUrl", {
273
280
  enumerable: true,
274
281
  configurable: true,
275
282
  writable: true,
@@ -279,7 +286,7 @@ var SequenceExecutor = /** @class */ (function () {
279
286
  return resolvedUrl;
280
287
  }
281
288
  });
282
- Object.defineProperty(this, "prepareWsHeaders", {
289
+ Object.defineProperty(this, "prepareHeaders", {
283
290
  enumerable: true,
284
291
  configurable: true,
285
292
  writable: true,
@@ -319,6 +326,62 @@ var SequenceExecutor = /** @class */ (function () {
319
326
  return { resolvedMessage: resolvedMessage, mimeType: mimeType };
320
327
  }
321
328
  });
329
+ Object.defineProperty(this, "resolveAndSetGRPCReqData", {
330
+ enumerable: true,
331
+ configurable: true,
332
+ writable: true,
333
+ value: function (_a, reqIndex) {
334
+ var url = _a.url, _b = _a.headers, headers = _b === void 0 ? [] : _b, grpc = _a.grpc, _c = _a.timeout, timeout = _c === void 0 ? request_1.DEFAULT_REQUEST_TIMEOUT : _c, _d = _a.expectedStatus, expectedStatus = _d === void 0 ? 'SUCCESS' : _d, auth = _a.auth;
335
+ var preparedUrl = _this.prepareUrl(url, reqIndex);
336
+ _this.setVolatileParameters(parameters_1.BUILT_IN_VOLATILE_PARAMS.requestURL, url);
337
+ var domain = uriUtils.getDomain(preparedUrl);
338
+ _this.validateDomain(domain, RequestType.GRPC);
339
+ var method = (grpc === null || grpc === void 0 ? void 0 : grpc.method) || '';
340
+ _this.setVolatileParameters(parameters_1.BUILT_IN_VOLATILE_PARAMS.requestMethod, method);
341
+ var service = (grpc === null || grpc === void 0 ? void 0 : grpc.service) || '';
342
+ _this.validateGrpcService(service);
343
+ if (auth) {
344
+ var user = auth.user, password = auth.password;
345
+ if (user && password) {
346
+ headers.push({
347
+ name: 'authorization',
348
+ value: 'Basic ' + Buffer.from(user + ":" + password).toString('base64'),
349
+ });
350
+ }
351
+ }
352
+ var preparedMessage = _this.prepareGRPCMessage(grpc, reqIndex).resolvedMessage;
353
+ var preparedHeaders = _this.prepareHeaders(headers, reqIndex);
354
+ return {
355
+ expectedStatus: expectedStatus,
356
+ headers: preparedHeaders,
357
+ message: preparedMessage,
358
+ timeout: timeout,
359
+ domain: domain,
360
+ service: service,
361
+ method: method,
362
+ url: preparedUrl,
363
+ };
364
+ }
365
+ });
366
+ Object.defineProperty(this, "prepareGRPCMessage", {
367
+ enumerable: true,
368
+ configurable: true,
369
+ writable: true,
370
+ value: function (grpc, reqIndex) {
371
+ var resolvedMessage = '';
372
+ if (grpc) {
373
+ resolvedMessage = _this.resolve(grpc.message, function (err) {
374
+ return setParameterErrorHistogram(err, 'Failed to compute gRPC message - ');
375
+ });
376
+ if (resolvedMessage && resolvedMessage.length > utils_1.getMaxRequestBodySize()) {
377
+ throw new errors_2.RequestFailuresError('gRPC message size is too large');
378
+ }
379
+ _this.resolvedRequests[reqIndex].grpc = __assign(__assign({}, grpc), { message: resolvedMessage });
380
+ }
381
+ _this.setVolatileParameters(parameters_1.BUILT_IN_VOLATILE_PARAMS.requestBody, resolvedMessage);
382
+ return { resolvedMessage: resolvedMessage };
383
+ }
384
+ });
322
385
  Object.defineProperty(this, "checkProgressEvent", {
323
386
  enumerable: true,
324
387
  configurable: true,
@@ -360,6 +423,7 @@ var SequenceExecutor = /** @class */ (function () {
360
423
  this.sensitiveData = !envUtils.isBrowser() ? process.env.LOADMILL_AGENT_SENSITIVE_DATA === 'true' || sensitiveData : sensitiveData;
361
424
  this.sensitiveKeys = sensitiveKeys;
362
425
  this.metricsKeys = metricsKeys;
426
+ this.protoFile = protoFile;
363
427
  }
364
428
  Object.defineProperty(SequenceExecutor.prototype, "startAndPass", {
365
429
  enumerable: false,
@@ -776,7 +840,8 @@ var SequenceExecutor = /** @class */ (function () {
776
840
  _d.label = 3;
777
841
  case 3:
778
842
  _d.trys.push([3, 5, , 9]);
779
- return [4 /*yield*/, request.ok(function (res) {
843
+ return [4 /*yield*/, request.ok(function (res, isExpectedStatus) {
844
+ if (isExpectedStatus === void 0) { isExpectedStatus = isExpectedHttpStatus; }
780
845
  var status = res.status;
781
846
  setTimeParams();
782
847
  setResolvedResponse({
@@ -843,6 +908,9 @@ var SequenceExecutor = /** @class */ (function () {
843
908
  if (this.isWSRequest(requestConf) && !envUtils.isBrowser()) {
844
909
  return this.prepareWSRequest(requestConf, reqIndex);
845
910
  }
911
+ else if (this.isGRPCRequest(requestConf)) {
912
+ return this.prepareGRPCRequest(requestConf, reqIndex);
913
+ }
846
914
  return this.prepareHttpRequest(requestConf, reqIndex);
847
915
  }
848
916
  });
@@ -856,6 +924,16 @@ var SequenceExecutor = /** @class */ (function () {
856
924
  return resolvedUrl.startsWith('ws://') || resolvedUrl.startsWith('wss://');
857
925
  }
858
926
  });
927
+ Object.defineProperty(SequenceExecutor.prototype, "isGRPCRequest", {
928
+ enumerable: false,
929
+ configurable: true,
930
+ writable: true,
931
+ value: function (_a) {
932
+ var url = _a.url;
933
+ var resolvedUrl = this.resolve(url, function (e) { return setParameterErrorHistogram(e, 'Failed to compute URL - '); });
934
+ return resolvedUrl.startsWith('grpc://');
935
+ }
936
+ });
859
937
  Object.defineProperty(SequenceExecutor.prototype, "prepareHttpRequest", {
860
938
  enumerable: false,
861
939
  configurable: true,
@@ -1102,26 +1180,52 @@ var SequenceExecutor = /** @class */ (function () {
1102
1180
  return new ws_1.WSRequest(wsRequestArgs, this.wsHandler, function (e) { return _this.setSingleFailure(reqIndex, 'Websocket error: ' + e.message); });
1103
1181
  }
1104
1182
  });
1183
+ Object.defineProperty(SequenceExecutor.prototype, "prepareGRPCRequest", {
1184
+ enumerable: false,
1185
+ configurable: true,
1186
+ writable: true,
1187
+ value: function (requestConf, reqIndex) {
1188
+ var _this = this;
1189
+ if (!this.protoFile) {
1190
+ throw new errors_2.RequestFailuresError('gRPC requests are only supported with a proto file');
1191
+ }
1192
+ var grpcRequestArgs = this.resolveAndSetGRPCReqData(requestConf, reqIndex);
1193
+ return new grpc_1.GRPCRequest(grpcRequestArgs, function (e) { return _this.setSingleFailure(reqIndex, 'gRPC error: ' + e.message); }, this.protoFile);
1194
+ }
1195
+ });
1105
1196
  Object.defineProperty(SequenceExecutor.prototype, "validateDomain", {
1106
1197
  enumerable: false,
1107
1198
  configurable: true,
1108
1199
  writable: true,
1109
- value: function (domain) {
1200
+ value: function (domain, requestType) {
1110
1201
  var _a, _b, _c;
1202
+ if (requestType === void 0) { requestType = RequestType.HTTP; }
1111
1203
  if (isEmpty_1.default(domain)) {
1112
- var message = 'HTTP request domain name is empty';
1204
+ var message = requestType + " request domain name is empty";
1113
1205
  throw new errors_2.RequestFailuresError(message, (_a = {}, _a[message] = 1, _a));
1114
1206
  }
1115
1207
  if (conf_1.validate.isUrl(domain)) {
1116
- var message = "HTTP request domain name [" + domain + "] is not valid";
1208
+ var message = requestType + " request domain name [" + domain + "] is not valid";
1117
1209
  throw new errors_2.RequestFailuresError(message, (_b = {}, _b[message] = 1, _b));
1118
1210
  }
1119
1211
  else if (!uriUtils.isVerified(domain, this.domainsWhiteList)) {
1120
- var message = "HTTP request domain name [" + domain + "] is not on white list";
1212
+ var message = requestType + " request domain name [" + domain + "] is not on white list";
1121
1213
  throw new errors_2.RequestFailuresError(message, (_c = {}, _c[message] = 1, _c));
1122
1214
  }
1123
1215
  }
1124
1216
  });
1217
+ Object.defineProperty(SequenceExecutor.prototype, "validateGrpcService", {
1218
+ enumerable: false,
1219
+ configurable: true,
1220
+ writable: true,
1221
+ value: function (service) {
1222
+ var _a;
1223
+ if (isEmpty_1.default(service)) {
1224
+ var message = 'gRPC request service name is empty';
1225
+ throw new errors_2.RequestFailuresError(message, (_a = {}, _a[message] = 1, _a));
1226
+ }
1227
+ }
1228
+ });
1125
1229
  Object.defineProperty(SequenceExecutor.prototype, "setSingleFailure", {
1126
1230
  enumerable: false,
1127
1231
  configurable: true,
@@ -1460,7 +1564,7 @@ var extendResponseHeaders = function (headers, redirectHeaders) {
1460
1564
  }
1461
1565
  return headers;
1462
1566
  };
1463
- var isExpectedStatus = function (_a, status) {
1567
+ var isExpectedHttpStatus = function (_a, status) {
1464
1568
  var expectedStatus = _a.expectedStatus, url = _a.url;
1465
1569
  if (expectedStatus === request_1.ALLOWED_RESPONSE_STATUSES.SUCCESS) {
1466
1570
  return (200 <= status && status < 400) || status === 101;
@@ -1499,4 +1603,9 @@ var setTCPReuse = function (request, agent, sslAgent) {
1499
1603
  _oldRequest.apply.apply(_oldRequest, __spreadArray([this], args));
1500
1604
  };
1501
1605
  };
1606
+ var RequestType;
1607
+ (function (RequestType) {
1608
+ RequestType["HTTP"] = "HTTP";
1609
+ RequestType["GRPC"] = "gRPC";
1610
+ })(RequestType || (RequestType = {}));
1502
1611
  //# sourceMappingURL=sequence.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sequence.js","sourceRoot":"","sources":["../src/sequence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sequence.js","sourceRoot":"","sources":["../src/sequence.ts"],"names":[],"mappings":"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"}
@@ -19,4 +19,7 @@ export interface ExecutableConf {
19
19
  sensitiveData?: boolean;
20
20
  sensitiveKeys?: string[];
21
21
  metricsKeys?: string[];
22
+ serviceDefinitionId?: string;
23
+ protoFileSignedUrl?: string;
24
+ protoFile?: protobuf.IParserResult;
22
25
  }
@@ -112,7 +112,7 @@ function runSingleIteration(conf) {
112
112
  sensitiveData: conf.sensitiveData,
113
113
  sensitiveKeys: conf.sensitiveKeys,
114
114
  metricsKeys: conf.metricsKeys,
115
- })];
115
+ }, conf.protoFile)];
116
116
  case 1: return [2 /*return*/, _a.sent()];
117
117
  }
118
118
  });
@@ -1 +1 @@
1
- {"version":3,"file":"single-runner.js","sourceRoot":"","sources":["../src/single-runner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAAoC;AACpC,uCAAsC;AACtC,2EAA+D;AAC/D,qEAA+C;AAG/C,qEAImC;AAEnC,qCAAuC;AAEvC,SAAsB,kCAAkC,CACtD,IAAoB;;;;;wBAEL,qBAAM,kBAAkB,CAAC,IAAI,CAAC,EAAA;;oBAAvC,MAAM,GAAG,SAA8B;oBAC7C,sBAAO,8CAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAC;;;;CACpD;AALD,gFAKC;AAED,SAAsB,kBAAkB,CACtC,IAAoB;;;;;;oBAGpB,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE;wBAC5C,aAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;wBAC/C,+CAA+C;wBAC/C,0EAA0E;wBAC1E,SAAS,GAAG,oBAAU,CAAC,KAAK,EAAE,CAAC;wBAC/B,oBAAU,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;qBACrC;yBAAM;wBACL,SAAS,GAAG,oBAAU,CAAC;qBACxB;oBAEM,qBAAM,mBAAQ,CAAC,OAAO,CAC3B,SAAS,EACT,cAAc,CAAC,IAAI,CAAC,EACpB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,gBAAgB,EACrB;4BACE,eAAe,EAAE,IAAI,CAAC,eAAe;4BACrC,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;4BACvD,aAAa,EAAE,IAAI,CAAC,aAAa;4BACjC,aAAa,EAAE,IAAI,CAAC,aAAa;4BACjC,WAAW,EAAE,IAAI,CAAC,WAAW;yBAC9B,CACF,EAAA;wBAZD,sBAAO,SAYN,EAAC;;;;CACH;AA3BD,gDA2BC;AAED,SAAS,cAAc,CAAC,EAKP;QAJf,QAAQ,cAAA,EACR,IAAI,UAAA,EACJ,UAAU,gBAAA,EACV,gBAAgB,sBAAA;IAEhB,OAAO,QAAQ,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,uBACxB,GAAG,KACN,IAAI,MAAA;QACJ,UAAU,YAAA;QACV,gBAAgB,kBAAA,IAChB,EAL2B,CAK3B,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"single-runner.js","sourceRoot":"","sources":["../src/single-runner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAAoC;AACpC,uCAAsC;AACtC,2EAA+D;AAC/D,qEAA+C;AAG/C,qEAImC;AAEnC,qCAAuC;AAEvC,SAAsB,kCAAkC,CACtD,IAAoB;;;;;wBAEL,qBAAM,kBAAkB,CAAC,IAAI,CAAC,EAAA;;oBAAvC,MAAM,GAAG,SAA8B;oBAC7C,sBAAO,8CAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAC;;;;CACpD;AALD,gFAKC;AAED,SAAsB,kBAAkB,CACtC,IAAoB;;;;;;oBAGpB,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE;wBAC5C,aAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;wBAC/C,+CAA+C;wBAC/C,0EAA0E;wBAC1E,SAAS,GAAG,oBAAU,CAAC,KAAK,EAAE,CAAC;wBAC/B,oBAAU,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;qBACrC;yBAAM;wBACL,SAAS,GAAG,oBAAU,CAAC;qBACxB;oBAEM,qBAAM,mBAAQ,CAAC,OAAO,CAC3B,SAAS,EACT,cAAc,CAAC,IAAI,CAAC,EACpB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,gBAAgB,EACrB;4BACE,eAAe,EAAE,IAAI,CAAC,eAAe;4BACrC,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;4BACvD,aAAa,EAAE,IAAI,CAAC,aAAa;4BACjC,aAAa,EAAE,IAAI,CAAC,aAAa;4BACjC,WAAW,EAAE,IAAI,CAAC,WAAW;yBAC9B,EACD,IAAI,CAAC,SAAS,CACf,EAAA;wBAbD,sBAAO,SAaN,EAAC;;;;CACH;AA5BD,gDA4BC;AAED,SAAS,cAAc,CAAC,EAKP;QAJf,QAAQ,cAAA,EACR,IAAI,UAAA,EACJ,UAAU,gBAAA,EACV,gBAAgB,sBAAA;IAEhB,OAAO,QAAQ,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,uBACxB,GAAG,KACN,IAAI,MAAA;QACJ,UAAU,YAAA;QACV,gBAAgB,kBAAA,IAChB,EAL2B,CAK3B,CAAC,CAAC;AACN,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loadmill/executer",
3
- "version": "0.1.94",
3
+ "version": "0.1.95",
4
4
  "description": "Loadmill executer library",
5
5
  "scripts": {
6
6
  "ts-watch": "rimraf dist && tsc -w -p tsconfig.json",
@@ -14,14 +14,17 @@
14
14
  },
15
15
  "license": "Apache-2.0",
16
16
  "dependencies": {
17
- "@loadmill/core": "0.3.93",
18
- "@loadmill/universal": "0.3.88",
17
+ "@grpc/grpc-js": "^1.9.8",
18
+ "@grpc/proto-loader": "^0.7.10",
19
+ "@loadmill/core": "0.3.94",
20
+ "@loadmill/universal": "0.3.89",
19
21
  "@types/estree": "^0.0.50",
20
22
  "acorn": "^8.4.1",
21
23
  "agentkeepalive": "^4.1.3",
22
24
  "bluebird": "^3.4.7",
23
25
  "jsedn": "^0.4.1",
24
26
  "lodash": "^4.17.21",
27
+ "protobufjs": "^7.2.5",
25
28
  "randomstring": "^1.1.5",
26
29
  "superagent": "^8.0.9",
27
30
  "urijs": "^1.18.1",