@promster/express 5.1.0 → 6.0.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.
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp } from './middleware';
|
|
2
|
-
import { getSummary, getContentType, Prometheus, defaultRegister, defaultNormalizers } from '@promster/metrics';
|
|
3
|
-
export { createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp, getSummary, getContentType, Prometheus, defaultRegister, defaultNormalizers, };
|
|
1
|
+
import { createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp } from './middleware';
|
|
2
|
+
import { getSummary, getContentType, Prometheus, defaultRegister, defaultNormalizers } from '@promster/metrics';
|
|
3
|
+
export { createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp, getSummary, getContentType, Prometheus, defaultRegister, defaultNormalizers, };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp } from './middleware';
|
|
2
|
-
export { createMiddleware, signalIsUp, signalIsNotUp, getRequestRecorder };
|
|
1
|
+
import { createMiddleware, getRequestRecorder, signalIsUp, signalIsNotUp } from './middleware';
|
|
2
|
+
export { createMiddleware, signalIsUp, signalIsNotUp, getRequestRecorder };
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import type { TPromsterOptions } from '@promster/types';
|
|
2
|
-
import type { TRequestRecorder } from '@promster/metrics';
|
|
3
|
-
import { Application, Request, Response, NextFunction } from 'express';
|
|
4
|
-
import { Prometheus } from '@promster/metrics';
|
|
5
|
-
interface TApp extends Application {
|
|
6
|
-
locals: Record<string, unknown>;
|
|
7
|
-
}
|
|
8
|
-
declare type TLocaleTarget = {
|
|
9
|
-
app?: TApp;
|
|
10
|
-
key: string;
|
|
11
|
-
value: typeof Prometheus | TRequestRecorder;
|
|
12
|
-
};
|
|
13
|
-
declare const exposeOnLocals: ({ app, key, value }: TLocaleTarget) => void;
|
|
14
|
-
declare const extractPath: (req: Request) => string;
|
|
15
|
-
declare const getRequestRecorder: () => TRequestRecorder;
|
|
16
|
-
declare const signalIsUp: () => void;
|
|
17
|
-
declare const signalIsNotUp: () => void;
|
|
18
|
-
declare type TMiddlewareOptions = {
|
|
19
|
-
app?: TApp;
|
|
20
|
-
options?: TPromsterOptions;
|
|
21
|
-
};
|
|
22
|
-
declare const createMiddleware: ({ app, options }?: TMiddlewareOptions) => (request: Request, response: Response, next: NextFunction) => void;
|
|
23
|
-
export { createMiddleware, exposeOnLocals, extractPath, getRequestRecorder, signalIsUp, signalIsNotUp, };
|
|
1
|
+
import type { TPromsterOptions } from '@promster/types';
|
|
2
|
+
import type { TRequestRecorder } from '@promster/metrics';
|
|
3
|
+
import { Application, Request, Response, NextFunction } from 'express';
|
|
4
|
+
import { Prometheus } from '@promster/metrics';
|
|
5
|
+
interface TApp extends Application {
|
|
6
|
+
locals: Record<string, unknown>;
|
|
7
|
+
}
|
|
8
|
+
declare type TLocaleTarget = {
|
|
9
|
+
app?: TApp;
|
|
10
|
+
key: string;
|
|
11
|
+
value: typeof Prometheus | TRequestRecorder;
|
|
12
|
+
};
|
|
13
|
+
declare const exposeOnLocals: ({ app, key, value }: TLocaleTarget) => void;
|
|
14
|
+
declare const extractPath: (req: Request) => string;
|
|
15
|
+
declare const getRequestRecorder: () => TRequestRecorder;
|
|
16
|
+
declare const signalIsUp: () => void;
|
|
17
|
+
declare const signalIsNotUp: () => void;
|
|
18
|
+
declare type TMiddlewareOptions = {
|
|
19
|
+
app?: TApp;
|
|
20
|
+
options?: TPromsterOptions;
|
|
21
|
+
};
|
|
22
|
+
declare const createMiddleware: ({ app, options }?: TMiddlewareOptions) => (request: Request, response: Response, next: NextFunction) => void;
|
|
23
|
+
export { createMiddleware, exposeOnLocals, extractPath, getRequestRecorder, signalIsUp, signalIsNotUp, };
|
|
@@ -51,7 +51,7 @@ const createMiddleware = ({
|
|
|
51
51
|
app: undefined,
|
|
52
52
|
options: undefined
|
|
53
53
|
}) => {
|
|
54
|
-
const allDefaultedOptions = merge__default[
|
|
54
|
+
const allDefaultedOptions = merge__default["default"](metrics.createMetricTypes.defaultOptions, metrics.createRequestRecorder.defaultOptions, metrics.defaultNormalizers, options);
|
|
55
55
|
const shouldSkipMetricsByEnvironment = allDefaultedOptions.detectKubernetes === true && !metrics.isRunningInKubernetes();
|
|
56
56
|
const metricTypes = metrics.createMetricTypes(allDefaultedOptions);
|
|
57
57
|
const observeGc = metrics.createGcObserver(metricTypes);
|
|
@@ -75,7 +75,7 @@ const createMiddleware = ({
|
|
|
75
75
|
return (request, response, next) => {
|
|
76
76
|
const start = process.hrtime();
|
|
77
77
|
response.on('finish', () => {
|
|
78
|
-
var _allDefaultedOptions$, _allDefaultedOptions$2;
|
|
78
|
+
var _allDefaultedOptions$, _allDefaultedOptions$2, _request$headers$cont, _response$getHeader;
|
|
79
79
|
|
|
80
80
|
const labels = Object.assign({}, {
|
|
81
81
|
method: allDefaultedOptions.normalizeMethod(request.method, {
|
|
@@ -92,8 +92,8 @@ const createMiddleware = ({
|
|
|
92
92
|
})
|
|
93
93
|
}, (_allDefaultedOptions$ = allDefaultedOptions.getLabelValues) === null || _allDefaultedOptions$ === void 0 ? void 0 : _allDefaultedOptions$.call(allDefaultedOptions, request, response));
|
|
94
94
|
const shouldSkipByRequest = (_allDefaultedOptions$2 = allDefaultedOptions.skip) === null || _allDefaultedOptions$2 === void 0 ? void 0 : _allDefaultedOptions$2.call(allDefaultedOptions, request, response, labels);
|
|
95
|
-
const requestContentLength = Number(request.headers['content-length']);
|
|
96
|
-
const responseContentLength = Number(response.getHeader('content-length'));
|
|
95
|
+
const requestContentLength = Number((_request$headers$cont = request.headers['content-length']) !== null && _request$headers$cont !== void 0 ? _request$headers$cont : 0);
|
|
96
|
+
const responseContentLength = Number((_response$getHeader = response.getHeader('content-length')) !== null && _response$getHeader !== void 0 ? _response$getHeader : 0);
|
|
97
97
|
|
|
98
98
|
if (!shouldSkipByRequest && !shouldSkipMetricsByEnvironment) {
|
|
99
99
|
recordRequest(start, {
|
|
@@ -109,33 +109,23 @@ const createMiddleware = ({
|
|
|
109
109
|
|
|
110
110
|
Object.defineProperty(exports, 'Prometheus', {
|
|
111
111
|
enumerable: true,
|
|
112
|
-
get: function () {
|
|
113
|
-
return metrics.Prometheus;
|
|
114
|
-
}
|
|
112
|
+
get: function () { return metrics.Prometheus; }
|
|
115
113
|
});
|
|
116
114
|
Object.defineProperty(exports, 'defaultNormalizers', {
|
|
117
115
|
enumerable: true,
|
|
118
|
-
get: function () {
|
|
119
|
-
return metrics.defaultNormalizers;
|
|
120
|
-
}
|
|
116
|
+
get: function () { return metrics.defaultNormalizers; }
|
|
121
117
|
});
|
|
122
118
|
Object.defineProperty(exports, 'defaultRegister', {
|
|
123
119
|
enumerable: true,
|
|
124
|
-
get: function () {
|
|
125
|
-
return metrics.defaultRegister;
|
|
126
|
-
}
|
|
120
|
+
get: function () { return metrics.defaultRegister; }
|
|
127
121
|
});
|
|
128
122
|
Object.defineProperty(exports, 'getContentType', {
|
|
129
123
|
enumerable: true,
|
|
130
|
-
get: function () {
|
|
131
|
-
return metrics.getContentType;
|
|
132
|
-
}
|
|
124
|
+
get: function () { return metrics.getContentType; }
|
|
133
125
|
});
|
|
134
126
|
Object.defineProperty(exports, 'getSummary', {
|
|
135
127
|
enumerable: true,
|
|
136
|
-
get: function () {
|
|
137
|
-
return metrics.getSummary;
|
|
138
|
-
}
|
|
128
|
+
get: function () { return metrics.getSummary; }
|
|
139
129
|
});
|
|
140
130
|
exports.createMiddleware = createMiddleware;
|
|
141
131
|
exports.getRequestRecorder = getRequestRecorder;
|
|
@@ -51,7 +51,7 @@ const createMiddleware = ({
|
|
|
51
51
|
app: undefined,
|
|
52
52
|
options: undefined
|
|
53
53
|
}) => {
|
|
54
|
-
const allDefaultedOptions = merge__default[
|
|
54
|
+
const allDefaultedOptions = merge__default["default"](metrics.createMetricTypes.defaultOptions, metrics.createRequestRecorder.defaultOptions, metrics.defaultNormalizers, options);
|
|
55
55
|
const shouldSkipMetricsByEnvironment = allDefaultedOptions.detectKubernetes === true && !metrics.isRunningInKubernetes();
|
|
56
56
|
const metricTypes = metrics.createMetricTypes(allDefaultedOptions);
|
|
57
57
|
const observeGc = metrics.createGcObserver(metricTypes);
|
|
@@ -75,7 +75,7 @@ const createMiddleware = ({
|
|
|
75
75
|
return (request, response, next) => {
|
|
76
76
|
const start = process.hrtime();
|
|
77
77
|
response.on('finish', () => {
|
|
78
|
-
var _allDefaultedOptions$, _allDefaultedOptions$2;
|
|
78
|
+
var _allDefaultedOptions$, _allDefaultedOptions$2, _request$headers$cont, _response$getHeader;
|
|
79
79
|
|
|
80
80
|
const labels = Object.assign({}, {
|
|
81
81
|
method: allDefaultedOptions.normalizeMethod(request.method, {
|
|
@@ -92,8 +92,8 @@ const createMiddleware = ({
|
|
|
92
92
|
})
|
|
93
93
|
}, (_allDefaultedOptions$ = allDefaultedOptions.getLabelValues) === null || _allDefaultedOptions$ === void 0 ? void 0 : _allDefaultedOptions$.call(allDefaultedOptions, request, response));
|
|
94
94
|
const shouldSkipByRequest = (_allDefaultedOptions$2 = allDefaultedOptions.skip) === null || _allDefaultedOptions$2 === void 0 ? void 0 : _allDefaultedOptions$2.call(allDefaultedOptions, request, response, labels);
|
|
95
|
-
const requestContentLength = Number(request.headers['content-length']);
|
|
96
|
-
const responseContentLength = Number(response.getHeader('content-length'));
|
|
95
|
+
const requestContentLength = Number((_request$headers$cont = request.headers['content-length']) !== null && _request$headers$cont !== void 0 ? _request$headers$cont : 0);
|
|
96
|
+
const responseContentLength = Number((_response$getHeader = response.getHeader('content-length')) !== null && _response$getHeader !== void 0 ? _response$getHeader : 0);
|
|
97
97
|
|
|
98
98
|
if (!shouldSkipByRequest && !shouldSkipMetricsByEnvironment) {
|
|
99
99
|
recordRequest(start, {
|
|
@@ -109,33 +109,23 @@ const createMiddleware = ({
|
|
|
109
109
|
|
|
110
110
|
Object.defineProperty(exports, 'Prometheus', {
|
|
111
111
|
enumerable: true,
|
|
112
|
-
get: function () {
|
|
113
|
-
return metrics.Prometheus;
|
|
114
|
-
}
|
|
112
|
+
get: function () { return metrics.Prometheus; }
|
|
115
113
|
});
|
|
116
114
|
Object.defineProperty(exports, 'defaultNormalizers', {
|
|
117
115
|
enumerable: true,
|
|
118
|
-
get: function () {
|
|
119
|
-
return metrics.defaultNormalizers;
|
|
120
|
-
}
|
|
116
|
+
get: function () { return metrics.defaultNormalizers; }
|
|
121
117
|
});
|
|
122
118
|
Object.defineProperty(exports, 'defaultRegister', {
|
|
123
119
|
enumerable: true,
|
|
124
|
-
get: function () {
|
|
125
|
-
return metrics.defaultRegister;
|
|
126
|
-
}
|
|
120
|
+
get: function () { return metrics.defaultRegister; }
|
|
127
121
|
});
|
|
128
122
|
Object.defineProperty(exports, 'getContentType', {
|
|
129
123
|
enumerable: true,
|
|
130
|
-
get: function () {
|
|
131
|
-
return metrics.getContentType;
|
|
132
|
-
}
|
|
124
|
+
get: function () { return metrics.getContentType; }
|
|
133
125
|
});
|
|
134
126
|
Object.defineProperty(exports, 'getSummary', {
|
|
135
127
|
enumerable: true,
|
|
136
|
-
get: function () {
|
|
137
|
-
return metrics.getSummary;
|
|
138
|
-
}
|
|
128
|
+
get: function () { return metrics.getSummary; }
|
|
139
129
|
});
|
|
140
130
|
exports.createMiddleware = createMiddleware;
|
|
141
131
|
exports.getRequestRecorder = getRequestRecorder;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@promster/express",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "6.0.0",
|
|
4
4
|
"description": "Express server integrations of promster",
|
|
5
5
|
"main": "dist/promster-express.cjs.js",
|
|
6
6
|
"typings": "dist/promster-express.cjs.d.ts",
|
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
"modules/**"
|
|
15
15
|
],
|
|
16
16
|
"engines": {
|
|
17
|
-
"node": ">=
|
|
18
|
-
"npm": ">=
|
|
17
|
+
"node": ">=14",
|
|
18
|
+
"npm": ">=6"
|
|
19
19
|
},
|
|
20
20
|
"publishConfig": {
|
|
21
21
|
"access": "public"
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"prometheus"
|
|
37
37
|
],
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@promster/metrics": "^
|
|
39
|
+
"@promster/metrics": "^8.0.0",
|
|
40
40
|
"merge-options": "3.0.4",
|
|
41
41
|
"tslib": "2.3.1"
|
|
42
42
|
},
|