apitally 0.6.1 → 0.7.0
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/common/client.cjs +514 -0
- package/dist/common/client.cjs.map +1 -0
- package/dist/common/client.d.cts +36 -0
- package/{lib/types → dist}/common/client.d.ts +12 -9
- package/dist/common/client.js +481 -0
- package/dist/common/client.js.map +1 -0
- package/dist/common/logging.cjs +41 -0
- package/dist/common/logging.cjs.map +1 -0
- package/dist/common/logging.d.cts +11 -0
- package/{lib/types → dist}/common/logging.d.ts +6 -3
- package/dist/common/logging.js +18 -0
- package/dist/common/logging.js.map +1 -0
- package/dist/common/packageVersions.cjs +42 -0
- package/dist/common/packageVersions.cjs.map +1 -0
- package/dist/common/packageVersions.d.cts +3 -0
- package/dist/common/packageVersions.d.ts +3 -0
- package/dist/common/packageVersions.js +18 -0
- package/dist/common/packageVersions.js.map +1 -0
- package/dist/common/paramValidation.cjs +43 -0
- package/dist/common/paramValidation.cjs.map +1 -0
- package/dist/common/paramValidation.d.cts +4 -0
- package/dist/common/paramValidation.d.ts +4 -0
- package/dist/common/paramValidation.js +19 -0
- package/dist/common/paramValidation.js.map +1 -0
- package/dist/common/requestCounter.cjs +111 -0
- package/dist/common/requestCounter.cjs.map +1 -0
- package/dist/common/requestCounter.d.cts +18 -0
- package/{lib/types → dist}/common/requestCounter.d.ts +7 -3
- package/dist/common/requestCounter.js +92 -0
- package/dist/common/requestCounter.js.map +1 -0
- package/dist/common/serverErrorCounter.cjs +133 -0
- package/dist/common/serverErrorCounter.cjs.map +1 -0
- package/dist/common/serverErrorCounter.d.cts +20 -0
- package/{lib/types → dist}/common/serverErrorCounter.d.ts +7 -3
- package/dist/common/serverErrorCounter.js +104 -0
- package/dist/common/serverErrorCounter.js.map +1 -0
- package/dist/common/types.cjs +19 -0
- package/dist/common/types.cjs.map +1 -0
- package/dist/common/types.d.cts +76 -0
- package/{lib/types → dist}/common/types.d.ts +17 -14
- package/dist/common/types.js +1 -0
- package/dist/common/types.js.map +1 -0
- package/dist/common/validationErrorCounter.cjs +76 -0
- package/dist/common/validationErrorCounter.cjs.map +1 -0
- package/dist/common/validationErrorCounter.d.cts +14 -0
- package/{lib/types → dist}/common/validationErrorCounter.d.ts +7 -3
- package/dist/common/validationErrorCounter.js +57 -0
- package/dist/common/validationErrorCounter.js.map +1 -0
- package/dist/express/index.cjs +837 -0
- package/dist/express/index.cjs.map +1 -0
- package/dist/express/index.d.cts +5 -0
- package/dist/express/index.d.ts +5 -0
- package/dist/express/index.js +801 -0
- package/dist/express/index.js.map +1 -0
- package/dist/express/listEndpoints.cjs +144 -0
- package/dist/express/listEndpoints.cjs.map +1 -0
- package/dist/express/listEndpoints.d.cts +3 -0
- package/dist/express/listEndpoints.d.ts +3 -0
- package/dist/express/listEndpoints.js +125 -0
- package/dist/express/listEndpoints.js.map +1 -0
- package/dist/express/middleware.cjs +835 -0
- package/dist/express/middleware.cjs.map +1 -0
- package/dist/express/middleware.d.cts +14 -0
- package/dist/express/middleware.d.ts +14 -0
- package/dist/express/middleware.js +801 -0
- package/dist/express/middleware.js.map +1 -0
- package/dist/fastify/index.cjs +685 -0
- package/dist/fastify/index.cjs.map +1 -0
- package/dist/fastify/index.d.cts +5 -0
- package/dist/fastify/index.d.ts +5 -0
- package/dist/fastify/index.js +649 -0
- package/dist/fastify/index.js.map +1 -0
- package/dist/fastify/plugin.cjs +679 -0
- package/dist/fastify/plugin.cjs.map +1 -0
- package/dist/fastify/plugin.d.cts +18 -0
- package/{lib/types → dist}/fastify/plugin.d.ts +7 -4
- package/dist/fastify/plugin.js +649 -0
- package/dist/fastify/plugin.js.map +1 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -0
- package/dist/koa/index.cjs +655 -0
- package/dist/koa/index.cjs.map +1 -0
- package/dist/koa/index.d.cts +5 -0
- package/dist/koa/index.d.ts +5 -0
- package/dist/koa/index.js +619 -0
- package/dist/koa/index.js.map +1 -0
- package/dist/koa/middleware.cjs +655 -0
- package/dist/koa/middleware.cjs.map +1 -0
- package/dist/koa/middleware.d.cts +8 -0
- package/dist/koa/middleware.d.ts +8 -0
- package/dist/koa/middleware.js +619 -0
- package/dist/koa/middleware.js.map +1 -0
- package/dist/nestjs/index.cjs +837 -0
- package/dist/nestjs/index.cjs.map +1 -0
- package/dist/nestjs/index.d.cts +5 -0
- package/dist/nestjs/index.d.ts +5 -0
- package/dist/nestjs/index.js +801 -0
- package/dist/nestjs/index.js.map +1 -0
- package/package.json +55 -92
- package/lib/cjs/common/client.cjs +0 -334
- package/lib/cjs/common/client.cjs.map +0 -1
- package/lib/cjs/common/logging.cjs +0 -17
- package/lib/cjs/common/logging.cjs.map +0 -1
- package/lib/cjs/common/packageVersions.cjs +0 -16
- package/lib/cjs/common/packageVersions.cjs.map +0 -1
- package/lib/cjs/common/paramValidation.cjs +0 -16
- package/lib/cjs/common/paramValidation.cjs.map +0 -1
- package/lib/cjs/common/requestCounter.cjs +0 -108
- package/lib/cjs/common/requestCounter.cjs.map +0 -1
- package/lib/cjs/common/serverErrorCounter.cjs +0 -154
- package/lib/cjs/common/serverErrorCounter.cjs.map +0 -1
- package/lib/cjs/common/types.cjs +0 -6
- package/lib/cjs/common/types.cjs.map +0 -1
- package/lib/cjs/common/validationErrorCounter.cjs +0 -60
- package/lib/cjs/common/validationErrorCounter.cjs.map +0 -1
- package/lib/cjs/express/index.cjs +0 -13
- package/lib/cjs/express/index.cjs.map +0 -1
- package/lib/cjs/express/listEndpoints.cjs +0 -177
- package/lib/cjs/express/listEndpoints.cjs.map +0 -1
- package/lib/cjs/express/middleware.cjs +0 -189
- package/lib/cjs/express/middleware.cjs.map +0 -1
- package/lib/cjs/fastify/index.cjs +0 -14
- package/lib/cjs/fastify/index.cjs.map +0 -1
- package/lib/cjs/fastify/plugin.cjs +0 -171
- package/lib/cjs/fastify/plugin.cjs.map +0 -1
- package/lib/cjs/index.cjs +0 -6
- package/lib/cjs/index.cjs.map +0 -1
- package/lib/cjs/koa/index.cjs +0 -13
- package/lib/cjs/koa/index.cjs.map +0 -1
- package/lib/cjs/koa/middleware.cjs +0 -139
- package/lib/cjs/koa/middleware.cjs.map +0 -1
- package/lib/cjs/nestjs/index.cjs +0 -13
- package/lib/cjs/nestjs/index.cjs.map +0 -1
- package/lib/esm/common/client.js +0 -324
- package/lib/esm/common/client.js.map +0 -1
- package/lib/esm/common/logging.js +0 -11
- package/lib/esm/common/logging.js.map +0 -1
- package/lib/esm/common/packageVersions.js +0 -10
- package/lib/esm/common/packageVersions.js.map +0 -1
- package/lib/esm/common/paramValidation.js +0 -9
- package/lib/esm/common/paramValidation.js.map +0 -1
- package/lib/esm/common/requestCounter.js +0 -102
- package/lib/esm/common/requestCounter.js.map +0 -1
- package/lib/esm/common/serverErrorCounter.js +0 -143
- package/lib/esm/common/serverErrorCounter.js.map +0 -1
- package/lib/esm/common/types.js +0 -1
- package/lib/esm/common/types.js.map +0 -1
- package/lib/esm/common/validationErrorCounter.js +0 -54
- package/lib/esm/common/validationErrorCounter.js.map +0 -1
- package/lib/esm/express/index.js +0 -1
- package/lib/esm/express/index.js.map +0 -1
- package/lib/esm/express/listEndpoints.js +0 -170
- package/lib/esm/express/listEndpoints.js.map +0 -1
- package/lib/esm/express/middleware.js +0 -182
- package/lib/esm/express/middleware.js.map +0 -1
- package/lib/esm/fastify/index.js +0 -1
- package/lib/esm/fastify/index.js.map +0 -1
- package/lib/esm/fastify/plugin.js +0 -164
- package/lib/esm/fastify/plugin.js.map +0 -1
- package/lib/esm/index.js +0 -1
- package/lib/esm/index.js.map +0 -1
- package/lib/esm/koa/index.js +0 -1
- package/lib/esm/koa/index.js.map +0 -1
- package/lib/esm/koa/middleware.js +0 -132
- package/lib/esm/koa/middleware.js.map +0 -1
- package/lib/esm/nestjs/index.js +0 -1
- package/lib/esm/nestjs/index.js.map +0 -1
- package/lib/types/common/client.d.ts.map +0 -1
- package/lib/types/common/logging.d.ts.map +0 -1
- package/lib/types/common/packageVersions.d.ts +0 -2
- package/lib/types/common/packageVersions.d.ts.map +0 -1
- package/lib/types/common/paramValidation.d.ts +0 -3
- package/lib/types/common/paramValidation.d.ts.map +0 -1
- package/lib/types/common/requestCounter.d.ts.map +0 -1
- package/lib/types/common/serverErrorCounter.d.ts.map +0 -1
- package/lib/types/common/types.d.ts.map +0 -1
- package/lib/types/common/validationErrorCounter.d.ts.map +0 -1
- package/lib/types/express/index.d.ts +0 -2
- package/lib/types/express/index.d.ts.map +0 -1
- package/lib/types/express/listEndpoints.d.ts +0 -3
- package/lib/types/express/listEndpoints.d.ts.map +0 -1
- package/lib/types/express/middleware.d.ts +0 -10
- package/lib/types/express/middleware.d.ts.map +0 -1
- package/lib/types/fastify/index.d.ts +0 -2
- package/lib/types/fastify/index.d.ts.map +0 -1
- package/lib/types/fastify/plugin.d.ts.map +0 -1
- package/lib/types/index.d.ts +0 -2
- package/lib/types/index.d.ts.map +0 -1
- package/lib/types/koa/index.d.ts +0 -2
- package/lib/types/koa/index.d.ts.map +0 -1
- package/lib/types/koa/middleware.d.ts +0 -4
- package/lib/types/koa/middleware.d.ts.map +0 -1
- package/lib/types/nestjs/index.d.ts +0 -2
- package/lib/types/nestjs/index.d.ts.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serverErrorCounter.js","names":["createHash","MAX_MSG_LENGTH","MAX_STACKTRACE_LENGTH","ServerErrorCounter","_classCallCheck","_defineProperty","errorCounts","Map","errorDetails","sentryEventIds","tryImportSentry","_createClass","key","value","addServerError","serverError","getKey","has","set","get","captureSentryEventId","getAndResetServerErrors","_this","data","forEach","count","push","consumer","method","path","type","msg","getTruncatedMessage","traceback","getTruncatedStack","sentry_event_id","error_count","clear","hashInput","toUpperCase","trim","join","update","digest","length","suffix","cutoff","substring","stack","lines","split","truncatedLines","_iterator","_createForOfIteratorHelper","_step","s","n","done","line","err","e","f","serverErrorKey","sentry","lastEventId","eventId","_tryImportSentry","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","sent","t0","stop","apply","arguments","default"],"sources":["../../../src/common/serverErrorCounter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/lib/esm/common/types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../../src/common/types.ts"],"sourcesContent":[null],"mappings":"","ignoreList":[]}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
2
|
-
import _createClass from "@babel/runtime/helpers/createClass";
|
|
3
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
4
|
-
import { createHash } from "crypto";
|
|
5
|
-
var ValidationErrorCounter = /*#__PURE__*/function () {
|
|
6
|
-
function ValidationErrorCounter() {
|
|
7
|
-
_classCallCheck(this, ValidationErrorCounter);
|
|
8
|
-
_defineProperty(this, "errorCounts", void 0);
|
|
9
|
-
_defineProperty(this, "errorDetails", void 0);
|
|
10
|
-
this.errorCounts = new Map();
|
|
11
|
-
this.errorDetails = new Map();
|
|
12
|
-
}
|
|
13
|
-
return _createClass(ValidationErrorCounter, [{
|
|
14
|
-
key: "addValidationError",
|
|
15
|
-
value: function addValidationError(validationError) {
|
|
16
|
-
var key = this.getKey(validationError);
|
|
17
|
-
if (!this.errorDetails.has(key)) {
|
|
18
|
-
this.errorDetails.set(key, validationError);
|
|
19
|
-
}
|
|
20
|
-
this.errorCounts.set(key, (this.errorCounts.get(key) || 0) + 1);
|
|
21
|
-
}
|
|
22
|
-
}, {
|
|
23
|
-
key: "getAndResetValidationErrors",
|
|
24
|
-
value: function getAndResetValidationErrors() {
|
|
25
|
-
var _this = this;
|
|
26
|
-
var data = [];
|
|
27
|
-
this.errorCounts.forEach(function (count, key) {
|
|
28
|
-
var validationError = _this.errorDetails.get(key);
|
|
29
|
-
if (validationError) {
|
|
30
|
-
data.push({
|
|
31
|
-
consumer: validationError.consumer || null,
|
|
32
|
-
method: validationError.method,
|
|
33
|
-
path: validationError.path,
|
|
34
|
-
loc: validationError.loc.split("."),
|
|
35
|
-
msg: validationError.msg,
|
|
36
|
-
type: validationError.type,
|
|
37
|
-
error_count: count
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
this.errorCounts.clear();
|
|
42
|
-
this.errorDetails.clear();
|
|
43
|
-
return data;
|
|
44
|
-
}
|
|
45
|
-
}, {
|
|
46
|
-
key: "getKey",
|
|
47
|
-
value: function getKey(validationError) {
|
|
48
|
-
var hashInput = [validationError.consumer || "", validationError.method.toUpperCase(), validationError.path, validationError.loc, validationError.msg.trim(), validationError.type].join("|");
|
|
49
|
-
return createHash("md5").update(hashInput).digest("hex");
|
|
50
|
-
}
|
|
51
|
-
}]);
|
|
52
|
-
}();
|
|
53
|
-
export { ValidationErrorCounter as default };
|
|
54
|
-
//# sourceMappingURL=validationErrorCounter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validationErrorCounter.js","names":["createHash","ValidationErrorCounter","_classCallCheck","_defineProperty","errorCounts","Map","errorDetails","_createClass","key","value","addValidationError","validationError","getKey","has","set","get","getAndResetValidationErrors","_this","data","forEach","count","push","consumer","method","path","loc","split","msg","type","error_count","clear","hashInput","toUpperCase","trim","join","update","digest","default"],"sources":["../../../src/common/validationErrorCounter.ts"],"sourcesContent":[null],"mappings":";;;AAAA,SAASA,UAAU,QAAQ,QAAQ;AAAC,IAQfC,sBAAsB;EAIzC,SAAAA,uBAAA;IAAAC,eAAA,OAAAD,sBAAA;IAAAE,eAAA;IAAAA,eAAA;IACE,IAAI,CAACC,WAAW,GAAG,IAAIC,GAAG,EAAE;IAC5B,IAAI,CAACC,YAAY,GAAG,IAAID,GAAG,EAAE;EAC/B;EAAC,OAAAE,YAAA,CAAAN,sBAAA;IAAAO,GAAA;IAAAC,KAAA,EAEM,SAAAC,mBACLC,eAAqD;MAErD,IAAMH,GAAG,GAAG,IAAI,CAACI,MAAM,CAACD,eAAe,CAAC;MACxC,IAAI,CAAC,IAAI,CAACL,YAAY,CAACO,GAAG,CAACL,GAAG,CAAC,EAAE;QAC/B,IAAI,CAACF,YAAY,CAACQ,GAAG,CAACN,GAAG,EAAEG,eAAe,CAAC;MAC7C;MACA,IAAI,CAACP,WAAW,CAACU,GAAG,CAACN,GAAG,EAAE,CAAC,IAAI,CAACJ,WAAW,CAACW,GAAG,CAACP,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjE;EAAC;IAAAA,GAAA;IAAAC,KAAA,EAEM,SAAAO,4BAAA,EAA2B;MAAA,IAAAC,KAAA;MAChC,IAAMC,IAAI,GAAgC,EAAE;MAC5C,IAAI,CAACd,WAAW,CAACe,OAAO,CAAC,UAACC,KAAK,EAAEZ,GAAG,EAAI;QACtC,IAAMG,eAAe,GAAGM,KAAI,CAACX,YAAY,CAACS,GAAG,CAACP,GAAG,CAAC;QAClD,IAAIG,eAAe,EAAE;UACnBO,IAAI,CAACG,IAAI,CAAC;YACRC,QAAQ,EAAEX,eAAe,CAACW,QAAQ,IAAI,IAAI;YAC1CC,MAAM,EAAEZ,eAAe,CAACY,MAAM;YAC9BC,IAAI,EAAEb,eAAe,CAACa,IAAI;YAC1BC,GAAG,EAAEd,eAAe,CAACc,GAAG,CAACC,KAAK,CAAC,GAAG,CAAC;YACnCC,GAAG,EAAEhB,eAAe,CAACgB,GAAG;YACxBC,IAAI,EAAEjB,eAAe,CAACiB,IAAI;YAC1BC,WAAW,EAAET;WACd,CAAC;QACJ;MACF,CAAC,CAAC;MACF,IAAI,CAAChB,WAAW,CAAC0B,KAAK,EAAE;MACxB,IAAI,CAACxB,YAAY,CAACwB,KAAK,EAAE;MACzB,OAAOZ,IAAI;IACb;EAAC;IAAAV,GAAA;IAAAC,KAAA,EAEO,SAAAG,OAAOD,eAAqD;MAClE,IAAMoB,SAAS,GAAG,CAChBpB,eAAe,CAACW,QAAQ,IAAI,EAAE,EAC9BX,eAAe,CAACY,MAAM,CAACS,WAAW,EAAE,EACpCrB,eAAe,CAACa,IAAI,EACpBb,eAAe,CAACc,GAAG,EACnBd,eAAe,CAACgB,GAAG,CAACM,IAAI,EAAE,EAC1BtB,eAAe,CAACiB,IAAI,CACrB,CAACM,IAAI,CAAC,GAAG,CAAC;MACX,OAAOlC,UAAU,CAAC,KAAK,CAAC,CAACmC,MAAM,CAACJ,SAAS,CAAC,CAACK,MAAM,CAAC,KAAK,CAAC;IAC1D;EAAC;AAAA;AAAA,SAlDkBnC,sBAAsB,IAAAoC,OAAA","ignoreList":[]}
|
package/lib/esm/express/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { useApitally } from "./middleware.js";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["useApitally"],"sources":["../../../src/express/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAW,QAAQ,iBAAiB","ignoreList":[]}
|
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
-
// Adapted from https://github.com/AlbertoFdzM/express-list-endpoints/blob/ed926dd5186761e7b721ad20938ce6eb52d104d3/src/index.js
|
|
3
|
-
var regExpToParseExpressPathRegExp = /^\/\^\\\/(?:(:?[\w\\.-]*(?:\\\/:?[\w\\.-]*)*)|(\(\?:\(\[\^\\\/]\+\?\)\)))\\\/.*/;
|
|
4
|
-
var regExpToReplaceExpressPathRegExpParams = /\(\?:\(\[\^\\\/]\+\?\)\)/;
|
|
5
|
-
var regexpExpressParamRegexp = /\(\?:\(\[\^\\\/]\+\?\)\)/g;
|
|
6
|
-
var EXPRESS_ROOT_PATH_REGEXP_VALUE = "/^\\/?(?=\\/|$)/i";
|
|
7
|
-
var STACK_ITEM_VALID_NAMES = ["router", "bound dispatch", "mounted_app"];
|
|
8
|
-
/**
|
|
9
|
-
* Returns all the verbs detected for the passed route
|
|
10
|
-
*/
|
|
11
|
-
var getRouteMethods = function getRouteMethods(route) {
|
|
12
|
-
var methods = Object.keys(route.methods);
|
|
13
|
-
methods = methods.filter(function (method) {
|
|
14
|
-
return method !== "_all";
|
|
15
|
-
});
|
|
16
|
-
methods = methods.map(function (method) {
|
|
17
|
-
return method.toUpperCase();
|
|
18
|
-
});
|
|
19
|
-
return methods;
|
|
20
|
-
};
|
|
21
|
-
/**
|
|
22
|
-
* Returns the names (or anonymous) of all the middlewares attached to the
|
|
23
|
-
* passed route
|
|
24
|
-
* @param {Object} route
|
|
25
|
-
* @returns {string[]}
|
|
26
|
-
*/
|
|
27
|
-
var getRouteMiddlewares = function getRouteMiddlewares(route) {
|
|
28
|
-
return route.stack.map(function (item) {
|
|
29
|
-
return item.handle.name || "anonymous";
|
|
30
|
-
});
|
|
31
|
-
};
|
|
32
|
-
/**
|
|
33
|
-
* Returns true if found regexp related with express params
|
|
34
|
-
* @param {string} expressPathRegExp
|
|
35
|
-
* @returns {boolean}
|
|
36
|
-
*/
|
|
37
|
-
var hasParams = function hasParams(expressPathRegExp) {
|
|
38
|
-
return regexpExpressParamRegexp.test(expressPathRegExp);
|
|
39
|
-
};
|
|
40
|
-
/**
|
|
41
|
-
* @param {Object} route Express route object to be parsed
|
|
42
|
-
* @param {string} basePath The basePath the route is on
|
|
43
|
-
* @return {Object[]} Endpoints info
|
|
44
|
-
*/
|
|
45
|
-
var parseExpressRoute = function parseExpressRoute(route, basePath) {
|
|
46
|
-
var paths = [];
|
|
47
|
-
if (Array.isArray(route.path)) {
|
|
48
|
-
paths.push.apply(paths, _toConsumableArray(route.path));
|
|
49
|
-
} else {
|
|
50
|
-
paths.push(route.path);
|
|
51
|
-
}
|
|
52
|
-
var endpoints = paths.map(function (path) {
|
|
53
|
-
var completePath = basePath && path === "/" ? basePath : "".concat(basePath).concat(path);
|
|
54
|
-
var endpoint = {
|
|
55
|
-
path: completePath,
|
|
56
|
-
methods: getRouteMethods(route),
|
|
57
|
-
middlewares: getRouteMiddlewares(route)
|
|
58
|
-
};
|
|
59
|
-
return endpoint;
|
|
60
|
-
});
|
|
61
|
-
return endpoints;
|
|
62
|
-
};
|
|
63
|
-
/**
|
|
64
|
-
* @param {RegExp} expressPathRegExp
|
|
65
|
-
* @param {Object[]} params
|
|
66
|
-
* @returns {string}
|
|
67
|
-
*/
|
|
68
|
-
var parseExpressPath = function parseExpressPath(expressPathRegExp, params) {
|
|
69
|
-
var expressPathRegExpExec = regExpToParseExpressPathRegExp.exec(expressPathRegExp);
|
|
70
|
-
var parsedRegExp = expressPathRegExp.toString();
|
|
71
|
-
var paramIndex = 0;
|
|
72
|
-
while (hasParams(parsedRegExp)) {
|
|
73
|
-
var paramName = params[paramIndex].name;
|
|
74
|
-
var paramId = ":".concat(paramName);
|
|
75
|
-
parsedRegExp = parsedRegExp.replace(regExpToReplaceExpressPathRegExpParams, paramId);
|
|
76
|
-
paramIndex++;
|
|
77
|
-
}
|
|
78
|
-
if (parsedRegExp !== expressPathRegExp.toString()) {
|
|
79
|
-
expressPathRegExpExec = regExpToParseExpressPathRegExp.exec(parsedRegExp);
|
|
80
|
-
}
|
|
81
|
-
var parsedPath = expressPathRegExpExec[1].replace(/\\\//g, "/");
|
|
82
|
-
return parsedPath;
|
|
83
|
-
};
|
|
84
|
-
/**
|
|
85
|
-
* @param {Object} app
|
|
86
|
-
* @param {string} [basePath]
|
|
87
|
-
* @param {Object[]} [endpoints]
|
|
88
|
-
* @returns {Object[]}
|
|
89
|
-
*/
|
|
90
|
-
var parseEndpoints = function parseEndpoints(app, basePath, endpoints) {
|
|
91
|
-
var stack = app.stack || app._router && app._router.stack;
|
|
92
|
-
endpoints = endpoints || [];
|
|
93
|
-
basePath = basePath || "";
|
|
94
|
-
if (!stack) {
|
|
95
|
-
endpoints = addEndpoints(endpoints, [{
|
|
96
|
-
path: basePath,
|
|
97
|
-
methods: [],
|
|
98
|
-
middlewares: []
|
|
99
|
-
}]);
|
|
100
|
-
} else {
|
|
101
|
-
endpoints = parseStack(stack, basePath, endpoints);
|
|
102
|
-
}
|
|
103
|
-
return endpoints;
|
|
104
|
-
};
|
|
105
|
-
/**
|
|
106
|
-
* Ensures the path of the new endpoints isn't yet in the array.
|
|
107
|
-
* If the path is already in the array merges the endpoints with the existing
|
|
108
|
-
* one, if not, it adds them to the array.
|
|
109
|
-
*
|
|
110
|
-
* @param {Object[]} currentEndpoints Array of current endpoints
|
|
111
|
-
* @param {Object[]} endpointsToAdd New endpoints to be added to the array
|
|
112
|
-
* @returns {Object[]} Updated endpoints array
|
|
113
|
-
*/
|
|
114
|
-
var addEndpoints = function addEndpoints(currentEndpoints, endpointsToAdd) {
|
|
115
|
-
endpointsToAdd.forEach(function (newEndpoint) {
|
|
116
|
-
var existingEndpoint = currentEndpoints.find(function (item) {
|
|
117
|
-
return item.path === newEndpoint.path;
|
|
118
|
-
});
|
|
119
|
-
if (existingEndpoint !== undefined) {
|
|
120
|
-
var newMethods = newEndpoint.methods.filter(function (method) {
|
|
121
|
-
return !existingEndpoint.methods.includes(method);
|
|
122
|
-
});
|
|
123
|
-
existingEndpoint.methods = existingEndpoint.methods.concat(newMethods);
|
|
124
|
-
} else {
|
|
125
|
-
currentEndpoints.push(newEndpoint);
|
|
126
|
-
}
|
|
127
|
-
});
|
|
128
|
-
return currentEndpoints;
|
|
129
|
-
};
|
|
130
|
-
/**
|
|
131
|
-
* @param {Object} stack
|
|
132
|
-
* @param {string} basePath
|
|
133
|
-
* @param {Object[]} endpoints
|
|
134
|
-
* @returns {Object[]}
|
|
135
|
-
*/
|
|
136
|
-
var parseStack = function parseStack(stack, basePath, endpoints) {
|
|
137
|
-
stack.forEach(function (stackItem) {
|
|
138
|
-
if (stackItem.route) {
|
|
139
|
-
var newEndpoints = parseExpressRoute(stackItem.route, basePath);
|
|
140
|
-
endpoints = addEndpoints(endpoints, newEndpoints);
|
|
141
|
-
} else if (STACK_ITEM_VALID_NAMES.includes(stackItem.name)) {
|
|
142
|
-
var isExpressPathRegexp = regExpToParseExpressPathRegExp.test(stackItem.regexp);
|
|
143
|
-
var newBasePath = basePath;
|
|
144
|
-
if (isExpressPathRegexp) {
|
|
145
|
-
var parsedPath = parseExpressPath(stackItem.regexp, stackItem.keys);
|
|
146
|
-
newBasePath += "/".concat(parsedPath);
|
|
147
|
-
} else if (!stackItem.path && stackItem.regexp && stackItem.regexp.toString() !== EXPRESS_ROOT_PATH_REGEXP_VALUE) {
|
|
148
|
-
var regExpPath = " RegExp(".concat(stackItem.regexp, ") ");
|
|
149
|
-
newBasePath += "/".concat(regExpPath);
|
|
150
|
-
}
|
|
151
|
-
endpoints = parseEndpoints(stackItem.handle, newBasePath, endpoints);
|
|
152
|
-
}
|
|
153
|
-
});
|
|
154
|
-
return endpoints;
|
|
155
|
-
};
|
|
156
|
-
var getEndpoints = function getEndpoints(app) {
|
|
157
|
-
var endpoints = parseEndpoints(app);
|
|
158
|
-
return endpoints.flatMap(function (route) {
|
|
159
|
-
return route.methods.filter(function (method) {
|
|
160
|
-
return !["HEAD", "OPTIONS"].includes(method.toUpperCase());
|
|
161
|
-
}).map(function (method) {
|
|
162
|
-
return {
|
|
163
|
-
method: method,
|
|
164
|
-
path: route.path
|
|
165
|
-
};
|
|
166
|
-
});
|
|
167
|
-
});
|
|
168
|
-
};
|
|
169
|
-
export default getEndpoints;
|
|
170
|
-
//# sourceMappingURL=listEndpoints.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"listEndpoints.js","names":["regExpToParseExpressPathRegExp","regExpToReplaceExpressPathRegExpParams","regexpExpressParamRegexp","EXPRESS_ROOT_PATH_REGEXP_VALUE","STACK_ITEM_VALID_NAMES","getRouteMethods","route","methods","Object","keys","filter","method","map","toUpperCase","getRouteMiddlewares","stack","item","handle","name","hasParams","expressPathRegExp","test","parseExpressRoute","basePath","paths","Array","isArray","path","push","apply","_toConsumableArray","endpoints","completePath","concat","endpoint","middlewares","parseExpressPath","params","expressPathRegExpExec","exec","parsedRegExp","toString","paramIndex","paramName","paramId","replace","parsedPath","parseEndpoints","app","_router","addEndpoints","parseStack","currentEndpoints","endpointsToAdd","forEach","newEndpoint","existingEndpoint","find","undefined","newMethods","includes","stackItem","newEndpoints","isExpressPathRegexp","regexp","newBasePath","regExpPath","getEndpoints","flatMap"],"sources":["../../../src/express/listEndpoints.js"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
3
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
4
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
5
|
-
import { performance } from "perf_hooks";
|
|
6
|
-
import { ApitallyClient } from "../common/client.js";
|
|
7
|
-
import { getPackageVersion } from "../common/packageVersions.js";
|
|
8
|
-
import listEndpoints from "./listEndpoints.js";
|
|
9
|
-
export var useApitally = function useApitally(app, config) {
|
|
10
|
-
var client = new ApitallyClient(config);
|
|
11
|
-
var middleware = getMiddleware(app, client);
|
|
12
|
-
app.use(middleware);
|
|
13
|
-
setTimeout(function () {
|
|
14
|
-
client.setAppInfo(getAppInfo(app, config.appVersion));
|
|
15
|
-
}, 100);
|
|
16
|
-
};
|
|
17
|
-
var getMiddleware = function getMiddleware(app, client) {
|
|
18
|
-
var validatorInstalled = getPackageVersion("express-validator") !== null;
|
|
19
|
-
var celebrateInstalled = getPackageVersion("celebrate") !== null;
|
|
20
|
-
var nestInstalled = getPackageVersion("@nestjs/core") !== null;
|
|
21
|
-
var classValidatorInstalled = getPackageVersion("class-validator") !== null;
|
|
22
|
-
var errorHandlerConfigured = false;
|
|
23
|
-
return function (req, res, next) {
|
|
24
|
-
if (!errorHandlerConfigured) {
|
|
25
|
-
// Add error handling middleware to the bottom of the stack when handling the first request
|
|
26
|
-
app.use(function (err, req, res, next) {
|
|
27
|
-
res.locals.serverError = err;
|
|
28
|
-
next(err);
|
|
29
|
-
});
|
|
30
|
-
errorHandlerConfigured = true;
|
|
31
|
-
}
|
|
32
|
-
try {
|
|
33
|
-
var startTime = performance.now();
|
|
34
|
-
var originalJson = res.json;
|
|
35
|
-
res.json = function (body) {
|
|
36
|
-
res.locals.body = body;
|
|
37
|
-
return originalJson.call(res, body);
|
|
38
|
-
};
|
|
39
|
-
res.on("finish", function () {
|
|
40
|
-
try {
|
|
41
|
-
if (req.route) {
|
|
42
|
-
var responseTime = performance.now() - startTime;
|
|
43
|
-
var consumer = getConsumer(req);
|
|
44
|
-
client.requestCounter.addRequest({
|
|
45
|
-
consumer: consumer,
|
|
46
|
-
method: req.method,
|
|
47
|
-
path: req.route.path,
|
|
48
|
-
statusCode: res.statusCode,
|
|
49
|
-
responseTime: responseTime,
|
|
50
|
-
requestSize: req.get("content-length"),
|
|
51
|
-
responseSize: res.get("content-length")
|
|
52
|
-
});
|
|
53
|
-
if ((res.statusCode === 400 || res.statusCode === 422) && res.locals.body) {
|
|
54
|
-
var validationErrors = [];
|
|
55
|
-
if (validatorInstalled) {
|
|
56
|
-
validationErrors.push.apply(validationErrors, _toConsumableArray(extractExpressValidatorErrors(res.locals.body)));
|
|
57
|
-
}
|
|
58
|
-
if (celebrateInstalled) {
|
|
59
|
-
validationErrors.push.apply(validationErrors, _toConsumableArray(extractCelebrateErrors(res.locals.body)));
|
|
60
|
-
}
|
|
61
|
-
if (nestInstalled && classValidatorInstalled) {
|
|
62
|
-
validationErrors.push.apply(validationErrors, _toConsumableArray(extractNestValidationErrors(res.locals.body)));
|
|
63
|
-
}
|
|
64
|
-
validationErrors.forEach(function (error) {
|
|
65
|
-
client.validationErrorCounter.addValidationError(_objectSpread({
|
|
66
|
-
consumer: consumer,
|
|
67
|
-
method: req.method,
|
|
68
|
-
path: req.route.path
|
|
69
|
-
}, error));
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
if (res.statusCode === 500 && res.locals.serverError) {
|
|
73
|
-
var serverError = res.locals.serverError;
|
|
74
|
-
client.serverErrorCounter.addServerError({
|
|
75
|
-
consumer: consumer,
|
|
76
|
-
method: req.method,
|
|
77
|
-
path: req.route.path,
|
|
78
|
-
type: serverError.name,
|
|
79
|
-
msg: serverError.message,
|
|
80
|
-
traceback: serverError.stack || ""
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
} catch (error) {
|
|
85
|
-
client.logger.error("Error while logging request in Apitally middleware.", {
|
|
86
|
-
request: req,
|
|
87
|
-
response: res,
|
|
88
|
-
error: error
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
} catch (error) {
|
|
93
|
-
client.logger.error("Error in Apitally middleware.", {
|
|
94
|
-
request: req,
|
|
95
|
-
response: res,
|
|
96
|
-
error: error
|
|
97
|
-
});
|
|
98
|
-
} finally {
|
|
99
|
-
next();
|
|
100
|
-
}
|
|
101
|
-
};
|
|
102
|
-
};
|
|
103
|
-
var getConsumer = function getConsumer(req) {
|
|
104
|
-
if (req.apitallyConsumer) {
|
|
105
|
-
return String(req.apitallyConsumer);
|
|
106
|
-
} else if (req.consumerIdentifier) {
|
|
107
|
-
// For backwards compatibility
|
|
108
|
-
return String(req.consumerIdentifier);
|
|
109
|
-
}
|
|
110
|
-
return null;
|
|
111
|
-
};
|
|
112
|
-
var extractExpressValidatorErrors = function extractExpressValidatorErrors(responseBody) {
|
|
113
|
-
var errors = [];
|
|
114
|
-
if (responseBody && responseBody.errors && Array.isArray(responseBody.errors)) {
|
|
115
|
-
responseBody.errors.forEach(function (error) {
|
|
116
|
-
if (error.location && error.path && error.msg && error.type) {
|
|
117
|
-
errors.push({
|
|
118
|
-
loc: "".concat(error.location, ".").concat(error.path),
|
|
119
|
-
msg: error.msg,
|
|
120
|
-
type: error.type
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
});
|
|
124
|
-
}
|
|
125
|
-
return errors;
|
|
126
|
-
};
|
|
127
|
-
var extractCelebrateErrors = function extractCelebrateErrors(responseBody) {
|
|
128
|
-
var errors = [];
|
|
129
|
-
if (responseBody && responseBody.validation) {
|
|
130
|
-
Object.values(responseBody.validation).forEach(function (error) {
|
|
131
|
-
if (error.source && error.keys && Array.isArray(error.keys) && error.message) {
|
|
132
|
-
error.keys.forEach(function (key) {
|
|
133
|
-
errors.push({
|
|
134
|
-
loc: "".concat(error.source, ".").concat(key),
|
|
135
|
-
msg: subsetJoiMessage(error.message, key),
|
|
136
|
-
type: ""
|
|
137
|
-
});
|
|
138
|
-
});
|
|
139
|
-
}
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
return errors;
|
|
143
|
-
};
|
|
144
|
-
var extractNestValidationErrors = function extractNestValidationErrors(responseBody) {
|
|
145
|
-
var errors = [];
|
|
146
|
-
if (responseBody && Array.isArray(responseBody.message)) {
|
|
147
|
-
responseBody.message.forEach(function (message) {
|
|
148
|
-
errors.push({
|
|
149
|
-
loc: "",
|
|
150
|
-
msg: message,
|
|
151
|
-
type: ""
|
|
152
|
-
});
|
|
153
|
-
});
|
|
154
|
-
}
|
|
155
|
-
return errors;
|
|
156
|
-
};
|
|
157
|
-
var subsetJoiMessage = function subsetJoiMessage(message, key) {
|
|
158
|
-
var messageWithKey = message.split(". ").find(function (message) {
|
|
159
|
-
return message.includes("\"".concat(key, "\""));
|
|
160
|
-
});
|
|
161
|
-
return messageWithKey ? messageWithKey : message;
|
|
162
|
-
};
|
|
163
|
-
var getAppInfo = function getAppInfo(app, appVersion) {
|
|
164
|
-
var versions = [["nodejs", process.version.replace(/^v/, "")]];
|
|
165
|
-
var expressVersion = getPackageVersion("express");
|
|
166
|
-
var apitallyVersion = getPackageVersion("../..");
|
|
167
|
-
if (expressVersion) {
|
|
168
|
-
versions.push(["express", expressVersion]);
|
|
169
|
-
}
|
|
170
|
-
if (apitallyVersion) {
|
|
171
|
-
versions.push(["apitally", apitallyVersion]);
|
|
172
|
-
}
|
|
173
|
-
if (appVersion) {
|
|
174
|
-
versions.push(["app", appVersion]);
|
|
175
|
-
}
|
|
176
|
-
return {
|
|
177
|
-
paths: listEndpoints(app),
|
|
178
|
-
versions: Object.fromEntries(versions),
|
|
179
|
-
client: "js:express"
|
|
180
|
-
};
|
|
181
|
-
};
|
|
182
|
-
//# sourceMappingURL=middleware.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","names":["performance","ApitallyClient","getPackageVersion","listEndpoints","useApitally","app","config","client","middleware","getMiddleware","use","setTimeout","setAppInfo","getAppInfo","appVersion","validatorInstalled","celebrateInstalled","nestInstalled","classValidatorInstalled","errorHandlerConfigured","req","res","next","err","locals","serverError","startTime","now","originalJson","json","body","call","on","route","responseTime","consumer","getConsumer","requestCounter","addRequest","method","path","statusCode","requestSize","get","responseSize","validationErrors","push","apply","_toConsumableArray","extractExpressValidatorErrors","extractCelebrateErrors","extractNestValidationErrors","forEach","error","validationErrorCounter","addValidationError","_objectSpread","serverErrorCounter","addServerError","type","name","msg","message","traceback","stack","logger","request","response","apitallyConsumer","String","consumerIdentifier","responseBody","errors","Array","isArray","location","loc","concat","validation","Object","values","source","keys","key","subsetJoiMessage","messageWithKey","split","find","includes","versions","process","version","replace","expressVersion","apitallyVersion","paths","fromEntries"],"sources":["../../../src/express/middleware.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/lib/esm/fastify/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as apitallyPlugin } from "./plugin.js";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["default","apitallyPlugin"],"sources":["../../../src/fastify/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,OAAO,IAAIC,cAAc,QAAQ,aAAa","ignoreList":[]}
|
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
3
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
4
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
5
|
-
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
6
|
-
import fp from "fastify-plugin";
|
|
7
|
-
import { ApitallyClient } from "../common/client.js";
|
|
8
|
-
import { getPackageVersion } from "../common/packageVersions.js";
|
|
9
|
-
var apitallyPlugin = /*#__PURE__*/function () {
|
|
10
|
-
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(fastify, config) {
|
|
11
|
-
var client, routes;
|
|
12
|
-
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
13
|
-
while (1) switch (_context2.prev = _context2.next) {
|
|
14
|
-
case 0:
|
|
15
|
-
client = new ApitallyClient(config);
|
|
16
|
-
routes = [];
|
|
17
|
-
fastify.decorateRequest("apitallyConsumer", null);
|
|
18
|
-
fastify.decorateRequest("consumerIdentifier", null); // For backwards compatibility
|
|
19
|
-
fastify.decorateReply("payload", null);
|
|
20
|
-
fastify.addHook("onRoute", function (routeOptions) {
|
|
21
|
-
var methods = Array.isArray(routeOptions.method) ? routeOptions.method : [routeOptions.method];
|
|
22
|
-
methods.forEach(function (method) {
|
|
23
|
-
if (!["HEAD", "OPTIONS"].includes(method.toUpperCase())) {
|
|
24
|
-
routes.push({
|
|
25
|
-
method: method.toUpperCase(),
|
|
26
|
-
path: routeOptions.url
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
});
|
|
31
|
-
fastify.addHook("onReady", function () {
|
|
32
|
-
client.setAppInfo(getAppInfo(routes, config.appVersion));
|
|
33
|
-
});
|
|
34
|
-
fastify.addHook("onClose", /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
35
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
36
|
-
while (1) switch (_context.prev = _context.next) {
|
|
37
|
-
case 0:
|
|
38
|
-
_context.next = 2;
|
|
39
|
-
return client.handleShutdown();
|
|
40
|
-
case 2:
|
|
41
|
-
case "end":
|
|
42
|
-
return _context.stop();
|
|
43
|
-
}
|
|
44
|
-
}, _callee);
|
|
45
|
-
})));
|
|
46
|
-
fastify.addHook("onSend", function (request, reply, payload, done) {
|
|
47
|
-
try {
|
|
48
|
-
reply.payload = JSON.parse(payload);
|
|
49
|
-
} catch (error) {} // eslint-disable-line no-empty
|
|
50
|
-
done();
|
|
51
|
-
});
|
|
52
|
-
fastify.addHook("onError", function (request, reply, error, done) {
|
|
53
|
-
if (!error.statusCode || error.statusCode === 500) {
|
|
54
|
-
reply.serverError = error;
|
|
55
|
-
}
|
|
56
|
-
done();
|
|
57
|
-
});
|
|
58
|
-
fastify.addHook("onResponse", function (request, reply, done) {
|
|
59
|
-
if (request.method.toUpperCase() !== "OPTIONS") {
|
|
60
|
-
// Get path from routeOptions if available (from v4), otherwise fallback to deprecated routerPath
|
|
61
|
-
var consumer = getConsumer(request);
|
|
62
|
-
var path = "routeOptions" in request ? request.routeOptions.url : request.routerPath;
|
|
63
|
-
var requestSize = request.headers["content-length"];
|
|
64
|
-
var responseSize = reply.getHeader("content-length");
|
|
65
|
-
if (Array.isArray(responseSize)) {
|
|
66
|
-
responseSize = responseSize[0];
|
|
67
|
-
}
|
|
68
|
-
client.requestCounter.addRequest({
|
|
69
|
-
consumer: consumer,
|
|
70
|
-
method: request.method,
|
|
71
|
-
path: path,
|
|
72
|
-
statusCode: reply.statusCode,
|
|
73
|
-
responseTime: reply.getResponseTime(),
|
|
74
|
-
requestSize: requestSize,
|
|
75
|
-
responseSize: responseSize
|
|
76
|
-
});
|
|
77
|
-
if ((reply.statusCode === 400 || reply.statusCode === 422) && reply.payload && (!reply.payload.code || reply.payload.code === "FST_ERR_VALIDATION") && typeof reply.payload.message === "string") {
|
|
78
|
-
var validationErrors = extractAjvErrors(reply.payload.message);
|
|
79
|
-
validationErrors.forEach(function (error) {
|
|
80
|
-
client.validationErrorCounter.addValidationError(_objectSpread({
|
|
81
|
-
consumer: consumer,
|
|
82
|
-
method: request.method,
|
|
83
|
-
path: path
|
|
84
|
-
}, error));
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
if (reply.statusCode === 500 && reply.serverError) {
|
|
88
|
-
client.serverErrorCounter.addServerError({
|
|
89
|
-
consumer: consumer,
|
|
90
|
-
method: request.method,
|
|
91
|
-
path: path,
|
|
92
|
-
type: reply.serverError.name,
|
|
93
|
-
msg: reply.serverError.message,
|
|
94
|
-
traceback: reply.serverError.stack || ""
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
done();
|
|
99
|
-
});
|
|
100
|
-
case 11:
|
|
101
|
-
case "end":
|
|
102
|
-
return _context2.stop();
|
|
103
|
-
}
|
|
104
|
-
}, _callee2);
|
|
105
|
-
}));
|
|
106
|
-
return function apitallyPlugin(_x, _x2) {
|
|
107
|
-
return _ref.apply(this, arguments);
|
|
108
|
-
};
|
|
109
|
-
}();
|
|
110
|
-
var getAppInfo = function getAppInfo(routes, appVersion) {
|
|
111
|
-
var versions = [["nodejs", process.version.replace(/^v/, "")]];
|
|
112
|
-
var fastifyVersion = getPackageVersion("fastify");
|
|
113
|
-
var apitallyVersion = getPackageVersion("../..");
|
|
114
|
-
if (fastifyVersion) {
|
|
115
|
-
versions.push(["fastify", fastifyVersion]);
|
|
116
|
-
}
|
|
117
|
-
if (apitallyVersion) {
|
|
118
|
-
versions.push(["apitally", apitallyVersion]);
|
|
119
|
-
}
|
|
120
|
-
if (appVersion) {
|
|
121
|
-
versions.push(["app", appVersion]);
|
|
122
|
-
}
|
|
123
|
-
return {
|
|
124
|
-
paths: routes,
|
|
125
|
-
versions: Object.fromEntries(versions),
|
|
126
|
-
client: "js:fastify"
|
|
127
|
-
};
|
|
128
|
-
};
|
|
129
|
-
var getConsumer = function getConsumer(request) {
|
|
130
|
-
if (request.apitallyConsumer) {
|
|
131
|
-
return String(request.apitallyConsumer);
|
|
132
|
-
} else if (request.consumerIdentifier) {
|
|
133
|
-
// For backwards compatibility
|
|
134
|
-
return String(request.consumerIdentifier);
|
|
135
|
-
}
|
|
136
|
-
return null;
|
|
137
|
-
};
|
|
138
|
-
var extractAjvErrors = function extractAjvErrors(message) {
|
|
139
|
-
var regex = /(?<=^|, )((?:headers|params|query|querystring|body)[/.][^ ]+)(?= )/g;
|
|
140
|
-
var matches = [];
|
|
141
|
-
var match;
|
|
142
|
-
while ((match = regex.exec(message)) !== null) {
|
|
143
|
-
matches.push({
|
|
144
|
-
match: match[0],
|
|
145
|
-
index: match.index
|
|
146
|
-
});
|
|
147
|
-
}
|
|
148
|
-
return matches.map(function (m, i) {
|
|
149
|
-
var endIndex = i + 1 < matches.length ? matches[i + 1].index - 2 : message.length;
|
|
150
|
-
var matchSplit = m.match.split(/[/.]/);
|
|
151
|
-
if (matchSplit[0] === "querystring") {
|
|
152
|
-
matchSplit[0] = "query";
|
|
153
|
-
}
|
|
154
|
-
return {
|
|
155
|
-
loc: matchSplit.join("."),
|
|
156
|
-
msg: message.substring(m.index, endIndex),
|
|
157
|
-
type: ""
|
|
158
|
-
};
|
|
159
|
-
});
|
|
160
|
-
};
|
|
161
|
-
export default fp(apitallyPlugin, {
|
|
162
|
-
name: "apitally"
|
|
163
|
-
});
|
|
164
|
-
//# sourceMappingURL=plugin.js.map
|