@promster/express 5.1.0 → 6.0.0
Sign up to get free protection for your applications and to get access to all the features.
@@ -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
|
},
|